Docker部署wordpress快速搭建博客
本文旨在快速部署,若有个性化需求的,可将本文作为参考修改各项参数。
创建wordpress网络
docker network create web-net
新建mysql容器
docker run -d --name=wordpress_db \
--network web-net \
--network-alias wordpress_db-host \
-e MYSQL_DATABASE=wordpress_db \
-e MYSQL_USER=ZCphm \
-e MYSQL_PASSWORD=EE2vj5b&q#BGyMpXB%24!c8ggbC*KD \
-e MYSQL_RANDOM_ROOT_PASSWORD='1' \
-v /home/wordpress/mysql:/var/lib/mysql \
--restart=always \
mysql:5.7
其中:
MYSQL_DATABASE是首次创建容器所建立的数据库名称。
MYSQL_USER是首次创建容器所新建的用户,用于wordpress连接。
MYSQL_PASSWORD是上述用户对应的密码。
MYSQL_RANDOM_ROOT_PASSWORD是生成随机的root密码,若该mysql是wordpress专用的,强烈建议开启,增强安全性。
新建wordpress容器
docker run -d --name=wordpress \
--network web-net \
--network-alias wordpress-host \
-e WORDPRESS_DB_HOST=wordpress_db-host \
-e WORDPRESS_DB_NAME=wordpress_db \
-e WORDPRESS_DB_USER=ZCphm \
-e WORDPRESS_DB_PASSWORD=EE2vj5b&q#BGyMpXB%24!c8ggbC*KD \
-e TZ="Asia/Shanghai" \
-p 8084:80 \
-v /home/wordpress/html:/var/www/html \
--restart=always \
wordpress:latest
其中:
WORDPRESS_DB_HOST是wordpress连接数据库的host,可ip可域名。
WORDPRESS_DB_NAME是wordpress连接的数据库名称。
WORDPRESS_DB_USER是wordpress连接数据库用的用户名。
WORDPRESS_DB_PASSWORD是wordpress连接数据库用的用户名对应密码。
-p 8084:80是将80端口映射为8084端口方便后续反代,可根据自身需求修改映射的端口号。
自此,添加好证书反代(Nginx反代教程快速跳转),你的博客就已经搭建好了。为了更好的使用,我们还需要修改php的上传文件参数。
进入wordpress容器
docker exec -it wordpress /bin/bash
复制PHP文件
cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini
修改PHP参数
vi /usr/local/etc/php/php.ini
输入i键开始编辑,输入esc键则进入命令模式。如果要查找,就输入“/”左斜杠符号后,输入你要查找的内容,回车跳转位置。
找到下面三项根据自身情况进行修改。
upload_max_filesize = 200M #文件大小限制
post_max_size = 250M #post大小限制
memory_limit = 500M #内存占用限制
修改完毕输入esc键,输入冒号,输入wq!强制保存。
保存完毕后输入exit回车退出容器。
如果还要修改其他配置如开启文件上传、上传超时等等去查配置文件即可,不再赘述。
另外修改PHP文件还有一个方法:
复制容器内默认的PHP文件到宿主机
docker cp wordpress:/usr/local/etc/php/php.ini-production /home/wordpress/php/php.ini
复制出来后可以用其他宿主机的工具修改/home/wordpress/php/php.ini文件即可,修改后运行下面的命令复制回容器。
docker cp /home/wordpress/php/php.ini wordpress:/usr/local/etc/php/php.ini