操作系统 centos 7.9 x64
工具: xshell6
准备工作
服务器安全组:
开放30001端口(wordpress端口,我这里用的30001,也可以自己定义),
开放3307端口(mysql端口,我这里用的3307,也可以自己定义【可选,用于本地连接远程数据库】)
防火墙:
# 永久添加3307端口(可选,用于本地连接远程数据库) firewall-cmd --add-port=3307/tcp --permanent # 重新载入配置,比如添加规则之后,需要执行此命令 firewall-cmd --reload
安装步骤
1.安装好docker,未安装的移步安装docker
2.配置数据库
# 下载mysql镜像 docker pull mysql # 创建数据卷 docker volume create mysql1 # 创建mysql容器 docker run -d -p 3307:3306 --name my-mysql --privileged=true -e MYSQL_ROOT_PASSWORD=123456 -v mysql1:/var/lib/mysql mysql # 进入容器内 docker exec -it mysql /bin/bash # 进入数据库 mysql -u root -p # 创建wordpress数据库 create database wordpress; # 创建一个专属用户用于访问wprdpress数据库 CREATE USER 'username'@'%' IDENTIFIED BY 'password'; # 赋予该用户相关操作权限 grant all on wordpress.* to 'username'@'%' with grant option; # 刷新权限 flush privileges; # 退出数据库 exit
参数解释:
- -p: 端口映射,33306表示宿主,3306表示容器中的端口。 这里表示将宿主机的33306映射给镜像的3306.
- -e: 环境变量, 环境变量和具体的Docker容器制作时设置有关,这里表示设置镜像中MySQL的root 密码时123456
- -v: 指定数据卷,也就是将我们MySQL容器的/var/lib/mysql映射到宿主机的/data/mysql
- –privileged=true: CentOS系统下的安全Selinux禁止了一些安全权限,导致MySQL容器在运行时会因为权限不足而报错,所以需要增加该选项
3.配置wordpress
docker run --name wordpress -d -p 30001:80 --link my-mysql:db wordpress
参数解释:
- “WORDPRESS_DB_HOST”: 链接的docker的MySQL的IP地址和端口,一般设置成mysql表示用默认的设置
- “WORDPRESS_DB_USER”: 以什么用户使用MySQL,默认是root
- “WORDPRESS_DB_PASSWORD” 这设置MySQL的登陆用户密码
- “WORDPRESS_DB_NAME”: 数据库的表名,不需要修改,用默认的”wordpress"就行
4.浏览器输入ip+port即可,我的port是30001
选择语言
配置数据库连接
登录界面
参考链接:
https://blog.csdn.net/weixin_47550354/article/details/117174940
https://blog.csdn.net/qq_42031483/article/details/97324832
https://blog.csdn.net/wshk918/article/details/108025486
原文链接:https://blog.csdn.net/qq_41340666/article/details/124614149?ops_request_misc=&request_id=291bf1eab3354700872bfdb51567a51c&biz_id=&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~koosearch~default-30-124614149-null-null.268%5Ev1%5Econtrol&utm_term=docker%E3%80%81wordpress%E3%80%81wordpress%E5%BB%BA%E7%AB%99%E3%80%81wordpress%E4%B8%BB%E9%A2%98%E3%80%81%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%E3%80%81