如何通过Docker安装WordPress?

本文主要介绍如何在Contos 7环境中,通过docker 安装配置 wordpress,网上的资料虽然多如牛毛,但多数是拾人牙慧,未经实践。

  1. 安装docker

第一步首先是安装docker,如果之前系统中已经安装过的话可以直接略过此步骤。
我们直接通过 yum 安装:

yum install docker 
  1. 启动docker

安装成功之后直接启动docker

service docker start 
  1. 修改镜像源

其实到这里docker已经是可用状态了,但是因为国外的镜像源下载速度感人,我们不得不再进行多一步的配置,将docker下载源设置为国内镜像:
找到 /etc/docker/daemon.json 配置文件,没有的话就创建一个,内容里设置为

{ "registry-mirrors": ["https://registry.docker-cn.com"] } 
  1. 下载mysql镜像
docker pull mysql:5.6 

这里只下载的mysql 的 5.6版本,我之前下载最新版本的 mysql 启动之后,wordpress一直报错连接不上,只好回退到5.6版本。

  1. 启动mysql
docker run --name wp_mysql_1 --privileged=true -p 3306:3306 -v /home/web_1/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD='xxxxxx' -d mysql:5.6 

这里解释下各个命令的含义:
–name 给运行的容器起一个名字,虽然启动之后,docker会返回一个很长的唯一标识字符串,但名字更利于管理和记忆。
–privileged=true 给容器开启特权,使容器可以看到外部设备。此命令执行必要性存疑。
-p 3306:3306 将容器的3306端口映射到主机的3306端口,使其他设备能够通过此端口访问到容器。
-v /home/web_1/mysql:/var/lib/mysql 给容器添加卷,冒号前为主机目录,冒号后为容器内目录。相当于容器和主机共享此目录,你在主机修改此目录的结果可以直接反应在容器中。
-e MYSQL_ROOT_PASSWORD=‘xxxxxx’ 给容器添加一个环境变量,我们通过MYSQL_ROOT_PASSWORD环境变量设置 mysql root用户的登录密码。
-d 后台运行此容器。

  1. 创建数据库
    下面我们需要为wordpress创建一个数据库,进入mysql 容器
docker exec -it wp_mysql_1 /bin/bash 

连接mysql,输入刚才设置的密码

mysql -u root -p 

创建数据库

create database wordpress; 

退出数据库连接

quit 

退出mysql容器

exit 
  1. 查看mysql地址
docker inspect wp_mysql_1 | grep "IPAddress" 

连接数据库需要地址和端口,我们之前已经把mysql容器的3306端口映射到了主机,但是还不知道容器的虚拟地址,其可以通过此命令来获取。

  1. 下载wordpress镜像
docker pull wordpress:latest 
  1. 启动wordpress
docker run --name wordpress_1 -v /home/web_1/wordpress:/var/www/html -e WORDPRESS_DB_HOST=172.17.0.2:3306 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD='xxxxxx' -e WORDPRESS_DB_NAME=wordpress -p 80:80 -d wordpress:latest 

这个命令的参数和之前启动mysql时候的参数基本相同,不再详细解释。需要注意的是WORDPRESS_DB_HOST的数据库地址是通过第七步的命令获取到的,其他几个环境变量的值都是之前步骤中设置过的。到此,基本完成了所有安装配置过程。
我们可以通过

docker ps -a 

查看容器是否正常
在这里插入图片描述
接下来即可在浏览器上通过 ip/wp-admin/install.php,来配置wordpress了。
这是我配置的网站地址:http://www.czhiyi.top/ ,欢迎大家浏览指导。
另外,给自己的开源库打个广告:
https://github.com/caozhiyi/CppNet
希望大家百忙之余,不忘star一下。感谢!

原文链接:https://blog.csdn.net/u012778714/article/details/102869935

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享