写在前面
这个网站我其实就是通过Wordpress搭建的,当初部署时候属实费劲,需要自己单独搭建数据库还需要部署PHP 7.4运行环境,最后要让Nginx加载PHP模块和好多依赖,不过现在已经可以通过容器部署还能规避很多坑
部署前准备
首先要拉取镜像,不过现在国内从Docker Hub拉取已经不行了,需要从其他镜像地址拉取,可以自己搜搜应该很多
#拉取MySQL和WordPress镜像
docker pull mysql:5.7 && docker pull wordpress
接着创建持久化目录
#创建目录
mkdir -p /data/wordpress/{web,database}
web目录用来存储网站持久化文件,database用来存储数据库持久化文件
然后创建compose.yaml文件
cat >>docker-compose.yml<<EOF
version: "3.8"
services:
db:
container_name: db_wordpress
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: wordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
volumes:
- /data/wordpress/database:/var/lib/mysql
wordpress:
container_name: wordpress
image: wordpress:latest
ports:
- 8000:80
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
- /data/wordpress/web:/var/www/html
depends_on:
- db
EOF
文件内容都是一些常规配置,这里就不做多解释了
启动服务
镜像和compose文件都准备好就可以启动容器了
docker cmpose up -d
#上面是docker cmpose 2.0 启动命令,如果是1.0要使用docker-cmpose up -d 命令
等容器都运行以后访问IP+8000端口就可以初始化WordPress,因为环境变量中有MySQL的相关配置,所以初始化过程中不再需要配置数据库信息

首先是选择语言

接着配置网站标题、管理员账户和密码就可以登陆并进入网站了,相对于传统搭建方式来说,容器部署方便非常多
