飞牛NAS+Docker技术搭建个人博客站:公网远程部署实战指南

article/2025/8/28 0:59:37

文章目录

    • 前言
    • 1. Docker下载源设置
    • 2. Docker下载WordPress
    • 3. Docker部署Mysql数据库
    • 4. WordPress 参数设置
    • 5. 飞牛云安装Cpolar工具
    • 6. 固定Cpolar公网地址
    • 7. 修改WordPress配置文件
    • 8. 公网域名访问WordPress
    • 总结

前言

在数字化浪潮中,传统网站搭建方式正面临前所未有的挑战。本文将为您揭示一套突破性方案——通过云存储系统与容器化部署技术,实现内容管理系统的高效构建。从独立创作者的灵感记录到机构组织的在线展示,从创意作品的数字陈列到企业级信息门户,这套技术组合正在重塑网络空间的构建逻辑。飞牛云NAS平台与Docker容器技术的协同应用,不仅解决了传统部署模式中的安全瓶颈,更开创了应用交付的标准化进程。现在,让我们共同探索这场融合创新架构与智能部署的数字化革命,见证技术如何赋能内容创作者的无限可能!

1. Docker下载源设置

访问飞牛云管理面板,打开docker,为了防止docker 镜像出现无法下载的情况,我们可以提前设置一下docker的仓库下载源,点击仓库设置

image-20241113151000317

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

image-20241113151108896

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

在这里插入图片描述

2. Docker下载WordPress

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

在这里插入图片描述

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

在这里插入图片描述

名称默认,点击下一步

image-20241113151739881

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

image-20241113151812975

然后直接点击创建

image-20241113151840011

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

image-20241113151916567

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

image-20241113152107852

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

image-20241113152225006

3. Docker部署Mysql数据库

同样我们在镜像仓库搜索mysql,下载mysql镜像

image-20241113152352971

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

image-20241113152702904

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

image-20241113152726455

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

image-20241113153205974

然后直接点击创建

image-20241113153251594

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

image-20241113153433428

选择一个连接方式连接

image-20241113153508167

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

image-20241113153547658

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

image-20241113153954105

4. WordPress 参数设置

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

image-20241113154307299

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

image-20241113154344463

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

image-20241113154543927

可以看到,成功安装了wordpress

image-20241113154658358

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

image-20241113154749312

5. 飞牛云安装Cpolar工具

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

image-20240904140930405

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

image-20240904142047011

连接后执行下面cpolar Linux 安装命令

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

执行这个命令后可能会出现卡主,可以看到这个位置是提示需要输入NAS用户名对应的密码,直接输入密码回车即可,期间没有报错表示安装成功

image-20240904142640620

然后执行下面系列命令来操作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

image-20240904143832209

6. 固定Cpolar公网地址

由于docker 访问限制,为了方便配置,因此我们直接为其配置Cpolar的二级子域名,该地址为固定地址,不会随机变化。

点击进入和登录Cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留

image-20241113174511989

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

image-20241113174559042

返回管理界面,在管理界面点击左侧仪表盘的隧道管理——创建隧道,创建一个wordpress的公网http地址隧道!

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:8088 (上面我们设置wordpress端口)
  • 域名类型:二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区:选择China vip

点击创建(点击一次创建按钮即可,不要重复点击!)

image-20241113174804706

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

image-20241113174929977

7. 修改WordPress配置文件

打开容器列表,然后打开wordpress终端

image-20241113175142761

选择这个点击连接

image-20241113175219140

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

image-20241113175358875

输入vim wp-config.php 打开wordpress 主配置文件,在配置文件中加上下面两个参数,注意!里面的域名换成自己设置的域名

define('WP_HOME', 'http://wp-test.vip.cpolar.cn');
define('WP_SITEURL', 'http://wp-test.vip.cpolar.cn');

这一步要严格注意,参数加在下面截图的位置,不要写错了,设置完成记得保存,尽量使用http域名

image-20241113175941684

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

image-20241113180057121

8. 公网域名访问WordPress

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

image-20241113180214497

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

总结

在数字技术编织的宏伟蓝图中,每一次代码的跃动都在重塑人类认知世界的维度。这仅仅是智能时代的启航阶段,在云原生架构与微服务生态构筑的创新矩阵中,每个技术触点都蕴藏着颠覆性创新的可能。本次技术解码之旅,或许能为你打开认知边界的缺口,让我们在万物互联的数字原野上,共同绘制属于未来的技术图谱。特别值得关注的是,这个知识体系将持续进化,建议定期关注我们的技术动态,见证更多突破性功能的迭代升级!


http://www.hkcw.cn/article/gJbhPoXKBh.shtml

相关文章

批目标灵活模拟!成都鼎讯雷达模拟器,打造沉浸式雷达对抗训练场景

在现代战争的电磁频谱博弈中,能否构建高度逼真的雷达干扰与目标环境,直接决定着雷达装备性能的上限与作战人员的实战能力。成都鼎讯凭借在数字射频存储(DRFM)、数字干扰调制(DJS)等前沿技术的深厚积累&…

GelSight Mini触觉传感器:7μm精度+3D 映射,赋能具身智能精密操作

GelSight Mini 高分辨率视触觉传感器采用先进的光学成像与触觉感知技术,赋予机器人接近人类的触觉能力。该设备可捕捉物体表面微观细节,并生成高精度的2D/3D数字映射,帮助机器人识别形状、纹理及接触力,从而执行更复杂、精准的操作…

【机器学习基础】机器学习入门核心算法:随机森林(Random Forest)

机器学习入门核心算法:随机森林(Random Forest) 1. 算法逻辑2. 算法原理与数学推导2.1 核心组件2.2 数学推导2.3 OOB(Out-of-Bag)误差 3. 模型评估评估指标特征重要性可视化 4. 应用案例4.1 医疗诊断4.2 金融风控4.3 遥…

Nacos 配置管理案例:nacos-spring-cloud-config-example详解

一、结构说明:基于Spring Cloud Alibaba的微服务示例 nacos-spring-cloud-config-example : 服务提供者 二、技术栈:Spring BootSpring CloudSpring Cloud Alibaba Nacos Actuator(可选:监控) 三、使用环境 安装…

Python训练营---Day39

知识点回顾 图像数据的格式:灰度和彩色数据模型的定义显存占用的4种地方 模型参数梯度参数优化器参数数据批量所占显存神经元输出中间状态 batchisize和训练的关系 作业:今日代码较少,理解内容即可 1、图像数据的格式:灰度和彩色数…

KeePass安装与KeePass设置中文教程

一、下载KeePass 访问官网:https://keepass.info 1,点击最新版本 2,下载最新版本 3,选择你要下载的版本 二、安装KeePass 1,第一步 2,第二步(一直点Next) 3,安装…

SQL正则表达式总结

这里写目录标题 一、元字符二、正则表达函数1、 regexp_like(x,pattern[,match_option])2、 regexp_instr(x,pattern[,start[,occurrence[,return_option[, match_option]]]]) 3、 REGEXP_SUBSTR(x,pattern[,start[,occurrence[, match_option]]]) 4、 REGEXP_REPLACE(x,patter…

2025 一带一路暨金砖国家技能发展与技术创新大赛 第一届“信创适配及安全管理赛项”样题

2025 一带一路暨金砖国家技能发展与技术创新大赛 第一届“信创适配及安全管理赛项”样题 模块A-理论知识:模块B-适配环境搭建:系统安装与配置:DNS 服务配置:DNS 服务配置:CA 服务配置:Httpd 服务配置&#…

unity编辑器扩展dll形式展示

1.背景:最近搞工程迁移发现一旦c#报错就会导致编辑器菜单没法使用,做了一些尝试发现使用dll的方式会是不错的选择。当然有些工具还是建议用外部的c#工程来写比如winform. 2.遇到的问题:我记得之前2017年左右的时候做一个unity的dll工程并不需…

Nacos | 三种方式的配置中心,整合Springboot3.x + yaml文件完成 0错误 自动刷新(亲测无误)

目录 ValueRefreshScope 导入配置依赖 启动类 添加 EnableDiscoveryClient 控制器 编写 yaml 文件 创建 Nacos Data Id 项目启动问题 测试 ConfigurationProperties 无感自动刷新 导入配置依赖 启动类 添加 EnableDiscoveryClient 控制器 Nacos DataID 模板映射 编…

[嵌入式实验]实验五:freeRTOS

一、实验目的 熟悉开发环境在开发板上通过freeRTOS进行LED控制 二、实验环境 硬件:STM32开发板、CMSIS-DAP调试工具 软件:STM32CubeMX软件、ARM的IDE:Keil C51 三、实验内容 1.实验原理 freeRTOS是一种专门设计的嵌入式实时操作系统&…

【Unity】 HTFramework框架(六十六)缺省的运行时组件检视器

更新日期:2025年5月29日。 Github 仓库:https://github.com/SaiTingHu/HTFramework Gitee 仓库:https://gitee.com/SaiTingHu/HTFramework 索引 一、缺省的运行时组件检视器1.自定义运行时组件检视器 二、使用缺省的运行时组件检视器1.定义组…

Ollama v0.8.0 发布,支持通过工具调用进行流式响应!

在 2025 年 5 月 29 日的 AI 技术浪潮中,实时交互性和高效性成为 AI 应用的核心需求。Ollama 作为一个开源的大型语言模型服务器,持续更新以满足开发者需求。Ollama v0.8.0 的发布特别引入了支持通过工具调用进行流式响应的功能,这一更新引发…

LVS+Keepalived 高可用群集

目录 一、 Keepalived 双机热备核心技术 1.1 Keepalived 架构与 VRRP协议 1.2 双机热备配置深度优化 二、 LVSKeepalived 高可用负载均衡架构 2.1 系统架构设计 2.2 LVS集成配置详解 三、 关键技术与疑难解析 3.1 DR模式 ARP 仰制机制 3.2 健康检查策略优化 四、 企业…

python + vscode 开发环境搭建

一、下载安装Python Python 官网链接Welcome to Python.org 二、Python3.12.7安装 三、Python虚拟环境 开发编译器使用Vscode 1、打开VsCode,键盘输入ctrl shift p 点击完了会在文件夹目录下出现一个.venv的路径。 虚拟环境的作用是隔离不同项目的 Python 环境…

[ Qt ] | QRadioButton和QCheckBox的使用

目录 QRadioButton 常用属性 clicked(bool)信号、pressed信号、released信号 小项目 QRadioButton QRadioButton是一个单选按钮,也是继承自QAbstractButton(继承自QWidget) 常用属性 checkable 是否能选中 checked 是否已经被选中 autoExclusive 是否排…

关于无法下载Qt离线安装包的说明

不知道出于什么原因考虑,Qt官方目前不提供离线的安装包下载,意味着网上各种文章提供的各种下载地址都失效了,会提示Download from your IP address is not allowed,当然目前可以在线安装,但是据说只提供了从5.15开始的…

github双重认证怎么做

引言 好久没登陆github了, 今天登陆github后,提醒进行2FA认证。 查看了github通知,自 2023 年 3 月起,GitHub 要求所有在 GitHub.com 上贡献代码的用户启用一种或多种形式的双重身份验证 (2FA)。 假如你也遇到这个问题&#xf…

多部手机连接同一wifi的ip一样吗?

在家庭和办公环境中,多台手机同时连接同一个WiFi路由器已成为常态。不少用户会产生疑问:这些设备的IP地址会相同吗?下面就一起来了解一下吧。 一、多部手机连接同一WiFi的IP‌一样吗 多部手机连接同一WiFi时的IP地址是否相同,需要…

实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.7 R语言解题

本文是实验设计与分析&#xff08;第6版&#xff0c;Montgomery著&#xff0c;傅珏生译) 第5章析因设计引导5.7节思考题5.7 R语言解题。主要涉及方差分析&#xff0c;正态假设检验&#xff0c;残差分析&#xff0c;交互作用图&#xff0c;等值线图。 dataframe <-data.frame…