12、利用docker快速搭建Wordpress网站

 一、准备工作

结构图:

用户访问页面,Nginx将请求进行转发,如果请求的是php页面,则通过FastCGI转发给后端php进行处理;如果非php页面,则直接返回静态页面。

 关键点:

  1. mysql、php-fpm、nginx处于一个网络中
  2. mysql、php-fpm端口不需要暴露
  3. nginx对php请求转发给FastCGI

1、自定义网络

docker network create lnmp

  

二、创建容器

1、创建Mysql容器

docker run -d --name lnmp_mysql --net lnmp --mount src=mysql-vol,dst=/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=wordpress mysql:5.7 --character-set-server=utf8

 

  • 容器名称:lnmp_mysql
  • 容器网络:lnmp
  • 数据卷:mysql-vol
  • 设置数据库密码和创建数据 

2、创建php容器

docker run -d --name lnmp_php --net lnmp --mount src=wwwroot,dst=/wwwroot custom_php:v1

  

  • 容器名称:lnmp_php
  • 容器网络:lnmp
  • 数据卷:wwwroot

3、创建nginx容器

docker run -d --name lnmp_nginx --net lnmp -p 88:80 --mount type=bind,src=$(pwd)/nginx.conf,dst=/usr/local/nginx/conf/nginx.conf --mount src=wwwroot,dst=/wwwroot custom_nginx:v1

  

  • 容器名称:lnmp_nginx
  • 容器网络:lnmp
  • 容器端口:80
  • 数据卷:wwwroot
  • 配置文件:bind方式,因为配置文件可能会有变更,保证每次容器可以获取最新的配置文件。

4、下载应用

wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz

  下载应用放到/var/lib/docker/volumes/wwwroot/_data

三、访问测试

 1、访问wordpress

 2、设置数据库连接

 3、完成数据设置

 

 4、填写网站信息

 5、访问应用

 一切都是预期的结果!

原文地址:https://www.cnblogs.com/skyflask/p/10112605.html