WordPress博客在fnOS环境下的极简搭建与公网地址配置指南
文章目录
- 前言
- 1. Docker下载源设置
- 2. Docker下载WordPress
- 3. Docker部署Mysql数据库
- 4. WordPress 参数设置
- 5. 飞牛云安装Cpolar工具
- 6. 固定Cpolar公网地址
- 7. 修改WordPress配置文件
- 8. 公网域名访问WordPress
前言
你是否曾经为搭建自己的网站而头疼不已?是不是觉得传统方法不仅繁琐而且效率低下呢?别担心,今天我要给你介绍一个超级酷炫的解决方案——利用飞牛云NAS与Docker快速构建并优化WordPress站点。这不仅仅是一个技术上的突破,更是一种全新的生活方式!
在这个数字化时代,无论是个人博客、小型企业还是大型组织,每个人都希望拥有一个高效且稳定的网站平台来展示自己的内容或产品。而说到数据存储和备份的神器,飞牛云NAS绝对值得你关注!它不仅具备强大的文件共享功能和多媒体娱乐特性,还以其卓越的安全性和扩展性赢得了广大用户的认可。
与此同时,Docker作为当今最热门的技术之一,凭借其轻量级、便携式的容器化方案彻底改变了应用程序部署的方式。通过将应用及其所有依赖项打包成一个独立的单元,Docker使得开发与运维变得更加简单高效。特别是对于像WordPress这样全球知名的CMS系统来说,结合飞牛云NAS和Docker简直是如虎添翼!
接下来的内容中,我将会带你一起探索如何利用这两款强大的工具轻松搭建并优化你的个人或企业网站,并且还会教你一个小技巧——通过cpolar实现内网穿透功能。这样一来,即使是在没有公网IP的情况下也能让你的站点对外界开放访问!是不是很神奇呢?让我们开始吧!
1. Docker下载源设置
访问飞牛云管理面板,打开docker,为了防止docker 镜像出现无法下载的情况,我们可以提前设置一下docker的仓库下载源,点击仓库设置

然后点击添加:https://hub.geekery.cn这个url作为下载源,添加后点击应用

添加完成后点击启用即可,docker下载源设置后,下面我们开始下载wordpress

2. Docker下载WordPress
点击搜索wordpress,然后点击下载第一个,等待下载完成

下载后,打开本地镜像,点击运行

名称默认,点击下一步

修改一下访问端口,本例改为8088,具体可以改为自己想要的端口.然后点击下一步

然后直接点击创建

创建后打开容器列表,可以看到成功运行了,如果出现运行不了,可能是端口冲突,可以重新运行换个端口,下面在浏览器访问测试

浏览器输入飞牛云局域网IP加自己设置的访问端口即可成功看到wordpress界面,选择中文语言,点击下一步

下面就来到我们数据库的设置了,下一步,创建数据库

3. Docker部署Mysql数据库
同样我们在镜像仓库搜索mysql,下载mysql镜像

下载后打开本地镜像列表,点击运行mysql

名称,默认,直接点击下一步

这里注意,端口我们按默认即可,不用去修改,然后打开环境变量,设置这个参数:MYSQL_ROOT_PASSWORD 表示设置root 用户的密码,然后点击下一步

然后直接点击创建

创建后,我们打开容器列表,可以看到创建运行成功,下面需要创建一个名称为wordpress的数据库,点击打开mysql终端

选择一个连接方式连接

然后我们输入mysql命令:mysql -uroot -p密码,登录进入mysql,密码就是我们上面设置的root用户的密码

然后执行create database wordpress; 这个命令,创建一个名称为wordpress的数据库,然后在执行show databases; 查看是否创建成功,出现了wordpress表示创建成功了,这样数据库运行和设置就完成了,下面我们回到网页上设置数据库

4. WordPress 参数设置
回到我们页面上wordpress数据库设置,然后把数据库信息填写进去,然后点击提交

可以看到,设置成功了,然后点击运行安装程序

然后设置一下wordpress的用户名和密码邮箱这些参数,点击安装wordpress

可以看到,成功安装了wordpress

点击登录,可以成功登录到wordpress管理界面,本地部署wordpress 和配置数据库就全部完成了,下面我们安装cpolar实现公网远程访问

5. 飞牛云安装Cpolar工具
飞牛云是基于Linux的,我们可以采用cpolar 的Linux方式安装,打开飞牛云NAS设置界面,开启ssh 连接,端口默认为22即可,开启后,我们就可以ssh 连接飞牛云NAS执行命令.

然后我们通过局域网IP ssh远程连接进去

连接后执行下面cpolar Linux 安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
执行这个命令后可能会出现卡主,可以看到这个位置是提示需要输入NAS用户名对应的密码,直接输入密码回车即可,期间没有报错表示安装成功

然后执行下面系列命令来操作cpolar 服务
# 加入系统服务设置开机启动
sudo systemctl enable cpolar# 启动cpolar服务
sudo systemctl start cpolar# 重启cpolar服务
sudo systemctl restart cpolar# 查看cpolar服务状态
sudo systemctl status cpolar# 停止cpolar服务
sudo systemctl stop cpolar
启动cpolar服务后,我们通过NAS局域网IP访问9200端口,即可看到cpolar的web ui 管理界面,一切操作在管理界面操作即可,如果没有账号,可以进入下面cpolar官网注册,或者点击登陆按钮下面免费注册也可以跳转去免费注册,注册后登录即可,这样cpolar在飞牛云安装就完成了.
cpolar官网地址: https://www.cpolar.com

6. 固定Cpolar公网地址
由于docker 访问限制,为了方便配置,因此我们直接为其配置Cpolar的二级子域名,该地址为固定地址,不会随机变化。
点击进入和登录Cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留

保留成功后复制保留成功的二级子域名的名称

返回管理界面,在管理界面点击左侧仪表盘的隧道管理——创建隧道,创建一个wordpress的公网http地址隧道!
- 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
- 协议:选择http
- 本地地址:8088 (上面我们设置wordpress端口)
- 域名类型:二级子域名
- Sub Domain:填写保留成功的二级子域名
- 地区:选择China vip
点击创建(点击一次创建按钮即可,不要重复点击!)

创建完成后,打开在线隧道列表,可以看到公网地址,该地址是固定的二级域名地址,不会随机变化,下面我们修改一下wordpress 配置文件,设置一下

7. 修改WordPress配置文件
打开容器列表,然后打开wordpress终端

选择这个点击连接

我们需要安装一个配置文件编辑工具输入apt install vim -y 安装vim编辑工具,安装后开始配置

输入vim wp-config.php 打开wordpress 主配置文件,在配置文件中加上下面两个参数,注意!里面的域名换成自己设置的域名
define('WP_HOME', 'http://wp-test.vip.cpolar.cn');
define('WP_SITEURL', 'http://wp-test.vip.cpolar.cn');
这一步要严格注意,参数加在下面截图的位置,不要写错了,设置完成记得保存,尽量使用http域名

设置完成后,我们重启一下wordpress 容器,重启后接下来直接访问

8. 公网域名访问WordPress
浏览器输入cpolar中我们创建的二级子域名,可以看到成功访问到了wordpress

同样,我们在域名后面加上/wp-admin.php这样就成功访问到了wordpress管理界面,至此,所有的配置就完成了,成功配置了wordpress公网访问,不受本地限制,注意,设置公网域名后,无法使用本地访问了,下次访问直接输入公网域名访问即可.

看完这篇教程后你是否对如何使用飞牛云NAS和Docker搭建WordPress有了全新的认识呢?其实这只是一个起点而已,在云计算与容器技术不断发展的今天,还有更多有趣且实用的应用等待着我们去探索。希望今天的分享能够帮助你在数字化转型的道路上迈出坚实的一步!
相关文章:
WordPress博客在fnOS环境下的极简搭建与公网地址配置指南
文章目录 前言1. Docker下载源设置2. Docker下载WordPress3. Docker部署Mysql数据库4. WordPress 参数设置5. 飞牛云安装Cpolar工具6. 固定Cpolar公网地址7. 修改WordPress配置文件8. 公网域名访问WordPress 前言 你是否曾经为搭建自己的网站而头疼不已?是不是觉得…...
计算机毕业设计SpringBoot校园二手交易小程序 校园二手交易平台(websocket消息推送+云存储+双端+数据统计)(源码+文档+运行视频+讲解视频)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
2025年前端面试题~ 【前端面试】更新
前言 金三银四的招聘季即将来临,对于怀揣前端梦想的求职者而言,这是机遇与挑战并存的黄金时段。前端面试可不只是简单的问答,它是一场对综合能力的深度检验。面试官会从多个维度考量,比如扎实的 HTML、CSS 和 JavaScript 基础&…...
深入 JVM 虚拟机:字符串常量池演变与 intern() 方法工作原理解析
🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template 🌺 仓库主页: GitCode︱ Gitee ︱ Github 💖 欢迎点赞 👍 收藏 ⭐评论 📝 如有错误敬请纠正! 前言 在 Java 开发中,字符串常量池(String Constant…...
从基础到人脸识别与目标检测
前言 从本文开始,我们将开始学习ROS机器视觉处理,刚开始先学习一部分外围的知识,为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本,系统采用Ubuntu20.04,ROS采用noetic。 颜…...
Java内存模型,内存屏障是干嘛的?
目录 Java 内存模型(Java Memory Model,JMM) 1. 定义和目的 2. 内存结构 3. 三大特性 4. happens-before 原则 内存屏障(Memory Barrier) 1. 定义和作用 2. 分类 3. 在 Java 中的应用 Java 内存模型(Java Memory Model, JMM) 1. 核心概念 2. 内存交互规则 …...
rdian是一个结构体,pdian=^Rdian,list泛型做什么用?
不明白不让编译的原因,记录下之遇到注意原油。 var mylist:TList<string>; mylist1:TList<Pdian>; mydian:Pdian; i:Integer; mylist2:TList<Rdian>; mydian2:rdian; arr:array of Rdian; begin mylist:TList…...
Photoshop自定义键盘快捷键
编辑 - 键盘快捷键 CtrlShiftAltK 把画笔工具改成Q , 橡皮擦改成W , 涂抹工具改成E , 增加和减小画笔大小A和S 偏好设置 - 透明度和色域 设置一样颜色 套索工具 可以自定义套选一片区域 Shiftf5 填充 CtrlU 可以改颜色/色相/饱和度 CtrlE 合并图层 CtrlShiftS 另存…...
C++智能指针的使用
文章目录 智能指针的使用和原理智能指针的使用场景RAII和智能指针C标准库智能指针的使用 智能指针的使用和原理 智能指针的使用场景 1. 下面的程序中,new了以后,我们也delete了,但是因为抛异常导致后面的delete没有得到执行,所以…...
LSTM的介绍
网上一些描述LSTM文章看的云里雾里,只是介绍LSTM 的结构,并没有说明原理。我这里用通俗易懂的话来描述一下。 我们先来复习一些RNN的核心公式: h t t a n h ( W h h t − 1 W x x t b h ) h_t tanh(W_h h_{t-1} W_x x_t b_h) httan…...
C++ ——从C到C++
1、C的学习方法 (1)C知识点概念内容比较多,需要反复复习 (2)偏理论,有的内容不理解,可以先背下来,后续可能会理解更深 (3)学好编程要多练习,简…...
AI技术填坑记2:标注系统
在问答中,通用大模型往往拥有不可控性,而在正常的业务系统里面,往往有自己的各种专门的术语和内容,标注系统可以对大量数据进行标记,确认大模型解答的结果符合设想。 一、总体思路 一个标注,一般分为模块、应用、提问词汇、标注值,其中,模块可以认为是一种应用分类;应…...
【机器学习】超参数的选择,以kNN算法为例
分类准确度 一、摘要二、超参数的概念三、调参的方法四、实验搜索超参数五、扩展搜索范围六、考虑距离权重的kNN算法七、距离的计算方法及代码实现八、明可夫斯基距离的应用九、网格搜索超参数 一、摘要 本博文讲解了机器学习中的超参数问题,以K近邻算法为例&#…...
哪吒闹海!SCI算法+分解组合+四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测
哪吒闹海!SCI算法分解组合四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测 目录 哪吒闹海!SCI算法分解组合四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测效果一览基本介绍程序设计参考资料 效果一览…...
Django开发入门 – 3.用Django创建一个Web项目
Django开发入门 – 3.用Django创建一个Web项目 Build A Web Based Project With Django By JacksonML 本文简要介绍如何利用最新版Python 3.13.2来搭建Django环境,以及创建第一个Django Web应用项目,并能够运行Django Web服务器。 创建该Django项目需…...
2025.2.8——二、Confusion1 SSTI模板注入|Jinja2模板
题目来源:攻防世界 Confusion1 目录 一、打开靶机,整理信息 二、解题思路 step 1:查看网页源码信息 step 2:模板注入 step 3:构造payload,验证漏洞 step 4:已确认为SSTI漏洞中的Jinjia2…...
【C语言标准库函数】标准输入输出函数详解[5]:格式化文件输入输出
目录 一、fprintf() 函数 1.1. 函数简介 1.2. fprintf使用场景 1.3. 注意事项 1.4. 示例 二、fscanf() 函数 2.1. 函数简介 2.2. fscanf使用场景 2.3. 注意事项 2.3. 示例 三、总结 在 C 语言中,格式化文件输入输出函数能够让我们以特定的格式对文件进行…...
【故障处理】 - 12C ADG备库密码文件的MD5值不断变化
【故障处理】 - 12C ADG备库密码文件的MD5值不断变化 一、概述二、报错原因:三、处理过程 一、概述 12C版本以后,密码文件的MD5值会持续变化。 二、报错原因: Oracle 数据库软件版本12.2 开始,当以具有管理权限的用户身份执行与数…...
【LeetCode Hot100 多维动态规划】最小路径和、最长回文子串、最长公共子序列、编辑距离
多维动态规划 机器人路径问题思路代码实现 最小路径和问题动态规划思路状态转移方程边界条件 代码实现 最长回文子串思路代码实现 最长公共子序列(LCS)题目描述解决方案 —— 动态规划1. 状态定义2. 状态转移方程3. 初始化4. 代码实现 编辑距离ÿ…...
【PG】DROP TABLE ... CASCADE
问题 ERROR: cannot drop table wx_user_tag because other objects depend on it DETAIL: default value for column id of table wx_user_tag depends on sequence wx_user_tag_id_seq HINT: Use DROP … CASCADE to drop the dependent objects too. 解决 这个错误消息表…...
青少年编程与数学 02-009 Django 5 Web 编程 04课题、应用创建
青少年编程与数学 02-009 Django 5 Web 编程 04课题、应用创建 一、项目及应用创建 Django 项目创建 Django 应用配置和测试 二、数据库的设置步骤 1: 创建 Django 项目步骤 2: 配置数据库PostgreSQLMySQL 步骤 3: 安装必要的数据库驱动步骤 4: 进行数据库迁移步骤 5: 创建应用…...
速度超越DeepSeek!Le Chat 1100tok/s闪电回答,ChatGPT 4o和DeepSeek R1被秒杀?
2023年,当全球科技界还在ChatGPT引发的AI狂潮中沉浮时,一场来自欧洲的"静默革命"正悄然改变游戏规则。法国人工智能公司Mistral AI推出的聊天机器人Le Chat以"比ChatGPT快10倍"的惊人宣言震动业界,其背后承载的不仅是技术…...
【详细版】DETR系列之Deformable DETR(2021 ICLR)
论文标题Deformable DETR: Deformable Transformers for End-to-End Object Detection论文作者Xizhou Zhu, Weijie Su, Lewei Lu, Bin Li, Xiaogang Wang, Jifeng Dai发表日期2021年03月01日GB引用> Xizhou Zhu, Weijie Su, Lewei Lu, et al. Deformable DETR: Deformable T…...
c++----函数重载
目录标题 为什么会有函数重载函数重载的概念函数重载的例子第一个:参数的类型不同第二个:参数的个数不同第三种:类型的顺序不同函数重载的奇异性重载函数的底层原理有关函数重载的一个问题 为什么会有函数重载 大家在学c语言的时候有没有发现…...
从云原生到 AI 原生,谈谈我经历的网关发展历程和趋势
作者:谢吉宝(唐三) 编者按: 云原生 API 网关系列教程即将推出,欢迎文末查看教程内容。本文整理自阿里云智能集团资深技术专家,云原生产品线中间件负责人谢吉宝(唐三) 在云栖大会的精…...
前端开发中,如何判断一个元素是否在可视区域中?
在前端开发中,判断一个元素是否在可视区域中是一个常见的需求,比如实现懒加载图片、无限滚动加载更多内容等功能。下面我将详细阐述这个问题。 一、判断元素是否在可视区域的方法 1. 使用 getBoundingClientRect 方法 getBoundingClientRect 方法返回…...
【干活分享】2025年可以免费问答的一些GPT网站-deepseek等免费gpt
2025年已经到来,大家也都陆续回归到忙碌的工作中。在新的一年里,如何更高效地完成工作任务,提升工作效率,是很多人关心的问题。今天,就为大家分享一些实用性很强的GPT网站,帮助大家在工作中事半功倍。 Dee…...
使用Redis实现业务信息缓存(缓存详解,缓存更新策略,缓存三大问题)
一、什么是缓存? 缓存是一种高效的数据存储方式,它通过将数据保存在内存中来提供快速的读写访问。这种机制特别适用于需要高速数据访问的应用场景,如网站、应用程序和服务。在处理大量数据和高并发请求时, 缓存能显著提高性能和用户体验。 Redis就是一款常用的缓存中间件。…...
ORB-SLAM3源码的学习:Atlas.cc②: Atlas:: CreateNewMap创建新地图
前言 简单总结一下地图是何时创建的: 构建slam系统时还没有地图就需要创建,当时间戳不对劲时影响数据的同步时需要创建,当跟踪的第一和第二阶段都为失败时都要分别创建,且满足一定要求的地图会保留作为非活跃地图。 1.创建新地…...
多头自注意力中的多头作用及相关思考
文章目录 1. num_heads2. pytorch源码演算 1. num_heads 将矩阵的最后一维度进行按照num_heads的方式进行切割矩阵,具体表示如下: 2. pytorch源码演算 pytorch 代码 import torch import torch.nn as nn import torch.nn.functional as Ftorch.set…...
