
WordPress 容器化部署全教程
WordPress 容器化部署全教程
本文将详细讲解如何使用
docker compose
方式部署整个WordPress博客系统
部署过程界面使用的是群晖
DSM7
系统,但因为我们是容器化部署,因此你可以在任意一台支持docker
的服务器上进行部署,包括但不限于群晖NAS
、绿联NAS
、极空间NAS
、CentOS
、Debian
等
容器部署
因为
WordPress
博客系统依赖Mysql
数据库,所以你首先得保证有一个可以访问的数据库,如果没有的话可以参考下面的教程手动部署一个Mysql容器
假设我们所有的容器部署的文件夹路径都在
~/docker
下操作
Mysql 容器
-
新建
mysql
文件夹,用于保存容器相关内容和配置文件 -
在
mysql
文件夹下分别新建data
、conf
、log
文件夹 -
在
mysql
文件夹下新建文件名为compose.yaml
并复制粘贴下面的内容到里面version: "3" services: mysql: image: mysql:8.2.0 hostname: mysql container_name: mysql restart: on-failure:3 volumes: - ./data/:/var/lib/mysql - ./conf/my.cnf:/etc/my.cnf - ./log:/var/log/mysql - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: # 修改这里的对外映射端口33306为你自己的端口,如果不需要对外暴露使用可以不用写ports设置, - 33306:3306 network_mode: "bridge" environment: # 设置数据库root账户的管理员密码 MYSQL_ROOT_PASSWORD: mysql_12345 TZ: Asia/Shanghai privileged: true command: - --default-authentication-plugin=mysql_native_password
-
粘贴并修改完成上面的配置后,切换路径到
mysql/conf
下 -
新建名为
my.cnf
的文件并复制粘贴下面的内容到文件中[mysqld] skip-host-cache skip-name-resolve datadir=/var/lib/mysql socket=/var/run/mysqld/mysqld.sock secure-file-priv=/var/lib/mysql-files user=mysql log_error_suppression_list='MY-013360' character_set_server=utf8 lower_case_table_names=1 group_concat_max_len=1024000 log_bin_trust_function_creators=1 pid-file=/var/run/mysqld/mysqld.pid [client] socket=/var/run/mysqld/mysqld.sock !includedir /etc/mysql/conf.d/
-
在
container manager
中新建项目(别的服务可以直接切换到~/docker/mysql
路径下使用docker compose up
构建项目)
-
启动完成
下面的步骤是为 WordPress
部署做准备的
-
进入mysql容器的后台
-
点击
新增
,进入bash
-
根据提示依次输入下面的命令
#登陆mysql,下面命令让你输入密码进入数据库 mysql -u root -p # 创建wordpressdb数据库 create database wordpressdb; # 使用wordpressdb数据库 use wordpressdb; # 创建wordpress用户 create user 'wordpress'@'%' identified by 'password'; # 将wordpressdb数据库授权给用户wordpress grant select,update,insert,delete,create on wordpressdb.* to wordpress; # 刷新权限 flush privileges; # 提交 commit;
-
完成后我们就创建了一个名为
wordpress
密码是password
的账号并且有权限管理新建的数据库wordpressdb
WordPress 容器
-
新建
wordpress
文件夹,用于保存容器相关内容和配置文件 -
在
wordpress
文件夹下新建data
文件夹 -
在
wordpress
文件夹下新建文件名为compose.yaml
并复制粘贴下面的内容到里面version: "3" services: wordpress: image: wordpress:php8.3 container_name: wordpress ports: # 对外访问的映射端口 - 18088:80/TCP deploy: resources: limits: # cpus: 'lower' memory: 8G volumes: - ./data:/var/www/html environment: WORDPRESS_DB_HOST: mysql # 分别填写刚才创建的数据库相关信息 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: password WORDPRESS_DB_NAME: wordpressdb restart: on-failure:3 network_mode: "bridge" external_links: - mysql
-
在
container manager
中新建项目(别的服务可以直接切换到~/docker/mysql
路径下使用docker compose up
构建项目) -
构建完成后在浏览器打开
http://ip:18088
访问服务 -
根据提示完成基本信息填写后执行安装(这个过程慢一点可能会等待约5分钟,不要操作该页面)
-
等待完成安装后即可访问,后台登陆地址是
/wp-login.php
,后台地址wp-admin.php
WordPress重点插件
因为WordPress博客系统的插件基本都是国外的,建议使用🪜后进行插件安装,否则大概率安装失败
这里只说明两个重要的插件,一个用于控制上传文件大小的(用这个就可以不用修改
php.ini
文件了),一个用于管理SSL设置的(群晖反代可以不用这个)
Big File Uploads
上传文件大小修改插件
使用方法:
- 安装并启用插件
- 在
媒体
-上传文件
中修改上传文件大小限制并保存即可
Really Simple Security
修改站点HTTPS请求异常插件
使用方法:
- 安装并启用插件
- 根据提示自动检查并部署即可使用
- 感谢你赐予我前进的力量