使用WordPress+mysql 容器搭建博客

1.下载镜像

国内镜像源: daocloud.io – 当然你可以使用阿里或者豆瓣源

在首页点击镜像市场找到mysql和WordPress的镜像,建议先配置加速器,加快下载速度

在这里插入图片描述

mysql 镜像 :docker pull daocloud.io/library/mysql:5.7.6

WordPress 镜像 : docker pull daocloud.io/daocloud/dao-wordpress:latest

实验环境 :青云服务器 centos7

2.创建 mysql 容器

官方文档已经给出怎么创建实例,按照文档格式run即可

在这里插入图片描述

docker run -d --name mydb --restart=always -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=wordpress -e MYSQL_USER=root --net bridge  daocloud.io/library/mysql:5.7.6
#####################################################
 --restart=always 重启策略,这样docker ps就可以看到在运行
 -v /data:/var/lib/mysql 数据卷持久化 匿名挂载 宿主机目录如果不存在则会创建
 --net bridge 默认网络桥接模式 可以不写
 MYSQL_ROOT_PASSWORD 数据库root密码
 MYSQL_DATABASE 数据库
 MYSQL_USER 数据库用户
 MYSQL_PASSWORD 数据库密码

当看到 mydb 的3306端口起来了就表示这个mysql容器run 成功了

在这里插入图片描述

如果发现 3306 端口没有起来,可以通过 docker logs mydb 查看容器日志信息

我在实验过程中出现了一个小错误,云服务器已经创建过data目录,里面有一些数据,导致我docker ps 查看的时候端口消失了

在这里插入图片描述

可以看出 mydb 的ip地址是172.17.0.2

在这里插入图片描述

3.创建 wordpress 容器

在这里插入图片描述

通过文档可知 wordpress 需要数据库名,数据库用户名,数据库密码,数据库表

在这里插入图片描述

docker run --name wordpress --restart=always -e WORDPRESS_DB_HOST=172.17.0.2:3306 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=123456 -e WORDPRESS_DB_NAME=wordpress -p 8080:80 -v /web:/var/www/html -d daocloud.io/daocloud/dao-wordpress:latest
###################################################
WORDPRESS_DB_HOST mydb数据库地址
WORDPRESS_DB_USER mydb数据库用户
WORDPRESS_DB_PASSWORD mydb数据库密码
WORDPRESS_DB_NAME mydb数据库名
-p 宿主机端口:容器端口

当看到8080端口启动,就表示 wordpress run成功了

在这里插入图片描述

4.访问 http://139.198.xx.xx:8080/

云服务器需要开放安全组端口,否则无法访问;虚拟机则不需要
在这里插入图片描述

5.优化

会发现一个问题,docker 网络桥接模式,如果mysql容器被删掉后,我起一个别的容器,那么这个容器就会占用172.17.0.2 这个ip地址,那么怎么让wordpress 即使mysql容器ip地址变了也能找到mysql呢?

mysql 镜像文档给出了方案,可以使用link来链接使用我们的mydb

在这里插入图片描述

wordpress 镜像文档对于变量也有默认值,比如主机默认link的mydb的ip+3306端口,用户名root,数据库wordpress,密码是link的mydb密码;

这样我们就可以简写,让使用默认值就可以了

docker run --name wordpress --restart=always --link mydb:mysql  -p 8080:80 -v /web:/var/www/html -d daocloud.io/daocloud/dao-wordpress:latest

这样即使mysql 镜像ip改变也不会error

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页