#下载镜像准备
docker pull mysql:latest #下载mysql镜像
docker pull richarvey/nginx-php-fpm:latest #下载nginx-php-fpm镜像
docker image inspect mysql:latest |grep -i version #查看仓库中最新mysql的版本
#自定义网络
docker network create lnmp #创建专用网络
docker network ls #查看网络信息
1、启动数据库容器,并创建库
docker run -itd --name lnmp_mysql --net lnmp -p 3306:3306 --mount src=mysql-vol,dst=/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql --character-set-server=utf8
#创建一个lnmp_mysql数据库容器,将数据库数据目录做一个挂载,保证数据持久化
docker exec lnmp_mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e"create database wordpress"'
#进入容器创建一个wordpress数据库
2、启动一个nginx-php-fpm容器
mkdir -p /app/webroot
docker run -itd --name lnmp_web --net lnmp -p 88:80 --mount type=bind,src=/app/webroot,dst=/var/www/html richarvey/nginx-php-fpm
echo "<?php phpinfo(); ?>" >/app/webroot/index.php
#lnmp_web容器数据挂载到本地/app/webroot/, 映射宿主机88端口,并做一个php测试页面,访问测试页面
3、下载解压wordpress
cd /app/webroot/ #进入网站的根目录
wget https://cn.wordpress.org/wordpress-5.1.2-zh_CN.tar.gz #下载wordpress
#可下载5.3.2版本,服务器托管环境或香港机房比较好下载,公司网络下载经常中断
tar -xvf wordpress-5.1.2-zh_CN.tar.gz
4、浏览器访问wordpress安装
http://192.168.10.192:88/wordpress
#数据库主机名直接写 数据库容器名称即可,跟lnmp_web在同一个网络, 会自动识别的
发现数据库报连接不上,原来是新版mysql要更改验证方式
docker exec -it lnmp_mysql bash
mysql -uroot -p
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
重新提交顺利安装~~~