WordPress
使用 Docker Compose 部署 WordPress
简介
WordPress是一个以PHP和MySQL为平台的自由开源的博客软件和内容管理系统。WordPress具有插件架构和模板系统。截至2018年4月,排名前1000万的网站中超过30.6%使用WordPress。WordPress是最受欢迎的网站内容管理系统。全球有大约43%的网站都是使用WordPress架设网站的。
快速使用
创建容器
在系统任意位置创建一个文件夹,此文档以
~/wp
为例。
mkdir ~/wp && cd ~/wp
注意:后续操作中,产生的所有数据都会保存在这个目录,请妥善保存。
创建
docker-compose.yaml
version: '3.8'
services:
wordpress:
image: wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: exampleuser
WORDPRESS_DB_PASSWORD: examplepass
WORDPRESS_DB_NAME: exampledb
volumes:
- wordpress:/var/www/html
db:
image: mysql:9.0.0
restart: always
environment:
MYSQL_DATABASE: exampledb
MYSQL_USER: exampleuser
MYSQL_PASSWORD: examplepass
MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes:
- db:/var/lib/mysql
volumes:
wordpress:
db:
MySQL
可以用 Mariadb 替代,web 服务器也可以用 apache、caddy 等替代
docker-compose.yaml
启动服务
docker compose up -d
实时查看日志:
docker compose logs -f
用浏览器访问即可
尝试访问 http://localhost:port
或 http://host-ip:port
是否能够正常访问
如果需要配置域名访问,建议先配置好反向代理以及域名解析再进行初始化。如果通过
http://ip:端口号
的形式无法访问,请到服务器厂商后台将运行的端口号添加到安全组,如果服务器使用了 Linux 面板,请检查此 Linux 面板是否有还有安全组配置,需要同样将端口号添加到安全组。
更新容器
停止运行中的容器组
cd ~/wp && docker compose down
备份数据(重要)
cp -r ~/wp ~/wp.archive
需要注意的是,wp.archive 文件名不一定要根据此文档命名,这里仅仅是个示例
更新服务
修改
docker-compose.yaml
中配置的镜像版本拉取镜像
docker compose pull
重新启动服务
docker compose up -d