Wordpress Docker

Docker基础镜像

1
2
3
docker pull wordpress
docker pull mysql:5.7
docker pull jc21/nginx-proxy-manager

创建网络:

1
docker network create metaweb

创建数据库镜像:

1
docker run --name mysq157 --net metaweb -e MYSQL_ROOT_PASSWORD=密码 -d mysql:5.7 --character-set-server=utf8 --collation-server=utf8_unicode_ci

数据库创建用户(这里设置的是WP的数据库账户和密码):

1
2
3
4
5
6
7
8
9
10
11
docker exec -it mysq157 bash

mysql -uroot -p

create database wp;

create user wp identified by "密码";

grant all on wp.* to wp;

exit

创建文件夹:

1
2
3
4
5
cd /home/

mkdir wp

cd wp/

创建Wordpress镜像:

1
docker run -dit --net metaweb -v $(pwd):/var/www/html --name wordpress wordpress

创建文件夹:

1
2
3
cd ../
mkdir nginx_proxy
cd nginx_proxy/

NginxProxy (若有更好的替代方案,可不创建容器) :

1
docker run -dit -p 80:80 -p 60054:81 -p 443:443 --net metaweb --name nginx_proxy -v $PWD/data:/data -v $PWD/letsencrypt:/etc/letsencrypt --restart=unless-stopped jc21/nginx-proxy-manager

修改wp-config:

1
2
3
4
5
6
7
8

define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https'){
$_SERVER['HTTPS'] = 'on';
}

图床

方案是Github+jsDelivr+PicGo

通过PicGo管理jsDelivr代理的Github仓库图片

Live2d

加载cdn资源即可