Ⅰ.介绍
最近折腾了很久的docker,也试图安装wordpress博客网站,最近终于完成了部署,效果较为满意,遂记录一下安装过程。开始之前先创建一下docker网络,用这段代码docker network create -d bridge wordpress-network
即可创建一个网络。
Ⅱ.安装mariadb数据库😜
使用如下代码用xshell在服务器安装数据库,/volume1/docker/bitnami/mariadb
可以修改为服务器其他路径,数据库密码自己设置。数据库安装可能需要点时间,用数据库连接根据连接一下13306端口,如果能服务就证明数据库已经安装完成了。接下来就可以安装wordpress。如果没有等数据库安装完成就安装wordpress的话,wordpress会启动失败的。
docker run -d --name mariadb \
-p 13306:3306 \
-e TZ=Asia/Shanghai \
--env MARIADB_ROOT_PASSWORD=设置root用户密码 \
--env MARIADB_USER=bn_wordpress \
--env MARIADB_PASSWORD=设置数据库密码 \
--env MARIADB_DATABASE=bitnami_wordpress \
--network wordpress-network \
--volume /volume1/docker/bitnami/mariadb:/bitnami/mariadb \
bitnami/mariadb:latest
Ⅲ.安装wordpress
安装wordpress也是和上面mariadb一样,使用如下代码即可。安装完成之后使用48080端口即可访问博客网站。这个时候先不要进行配置。等
docker run -d --name wordpress \
-p 48080:8080 -p 8443:8443 \
-e TZ=Asia/Shanghai \
--env WORDPRESS_DATABASE_USER=bn_wordpress \
--env WORDPRESS_DATABASE_PASSWORD=设置数据库密码 \
--env WORDPRESS_DATABASE_NAME=bitnami_wordpress \
--network wordpress-network \
--volume /volume1/docker/bitnami/wordpress:/bitnami/wordpress \
bitnami/wordpress:latest
Ⅳ.使用NPM反向代理博客
使用如下配置即可代理完成,192.168.31.89
内网地址可根据实际修改。最核心的是下面的Advanced配置。
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass https://192.168.31.89:8443;
}
这是nginx proxy manager应用的配置截图
如果需要反向代理http的4808端口则需要修改wp-config.php
文件,文件就在/volume1/docker/bitnami/wordpress
目录下面,此文件默认没有修改权限,得执行chmod 755 wp-config.php
命令再去修改文件。
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') $_SERVER['HTTPS']='on';
确保上面那行代码在下面这行代码上面
require_once(ABSPATH . 'wp-settings.php');
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://192.168.31.89:48080;
}
Ⅳ.总结
这次wordpress的安装折腾了好久,主要是因为家里的宽带是封禁了80和443端口的,所以只能用其他端口,其他端口反向代理wordpress就会出现各种问题(比如静态资源URL没有带端口,静态资源HTTPS协议不对,变成HTTP了),好在看了无数的教程,才总结出来这两行代码proxy_set_header Host $http_host;proxy_set_header X-Forwarded-Proto $scheme;
,最终解决了反向代理的问题,其他的一些PHP网站也有这样的问题,都通过这两行代码解决了。
评论区