1、pull 镜像
sudo docker pull mysql:5.7
sudo docker pull php:7.0-fpm
2、创建docker-compose.yml
version: '3' services: service_mysql: image: mysql:5.7 command: --default-authentication-plugin=mysql_native_password # 默认身份认证插件 restart: always volumes: - /home/www/liuchang.org/db:/var/lib/mysql # 把数据库文件存到宿主机目录 environment: MYSQL_ROOT_PASSWORD: 123456 # root密码 MYSQL_DATABASE: test # 创建数据库 MYSQL_USER: test # 新建用户 MYSQL_PASSWORD: 123456 # 新建用户密码 services: service_php: image: php:7.0-fpm restart: always links: - "service_mysql:database" # 在wordpress配置database host时,可以直接填写 database 即可连接到上面配的mysql volumes: - /home/www/liuchang.org/app:/data/wwwroot # 宿主机目录放wordpress代码 ports: - "5001:9000" # PHP端口为9000,映射到宿主机的5001端口,如果不使用nginx可以直接映射到80端口
3、启动:
sudo docker-compose up
后台启动
sudo docker-compose up -d
4、如果报错找不到mysql_connection,需要在php中安装mysqli
# 进入容器 docker exec -it PHP容器ID /bin/bash # 安装mysqli docker-php-ext-install mysqli