1.先把wordpress的镜像下载下来
docker pull wordpress
2.下载mysql
docker pull mysql:lastest
3.启动mysql
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
name参数指定要启动的实例名称这里我称mysql实例为some-mysql,MYSQL_ROOT_PASSWORD指定ROOT密码。tag参数是MySQL的版本号,可以是5.7、5.6、8.0。
4.启动wordpress 并连接 mysql(应该是拉wordpress时自动配置了运行环境)
安装好数据库之后,就可以启动WordPress了。详细的文档参考这里。如果使用Docker中安装的MySQL实例,使用下面的命令。
docker run --name some-wordpress --link some-mysql:mysql -p 8080:80 -d wordpress
name参数指定要启动的WordPress实例名称,link参数指定要使用的Docker MySQL实例名称,p参数将Docker内部的80端口映射到本地的8080端口上。
如果使用外部的MySQL数据库,则输入下面的命令。
docker run –name some-wordpress -e WORDPRESS_DB_HOST=10.1.2.3:3306 \ -e WORDPRESS_DB_USER=… -e WORDPRESS_DB_PASSWORD=… -d wordpress
WORDPRESS_DB_HOST参数是MySQL的数据库端口号,WORDPRESS_DB_USER是要数据库用户名,WORDPRESS_DB_PASSWORD是数据库密码。这里的WORDPRESS_DB_HOST参数不能填写localhost,因为这样会重定向到WordPress镜像内部的localhost,而这个镜像中实际上没有安装MySQL。所以这里需要填写本机IP地址,才能正确访问到Docker外部的本机的数据库。
因此需要注意,如果使用外部数据库的话,数据库的用户需要具有外部IP的权限,因为这次不是通过本机回环地址访问。默认情况下MySQL安装时候的ROOT用户只允许本地登录,所以可能需要配置允许用户远程登录。
然后打开浏览器,输入localhost:8080(端口号是命令中设置的),然后就可以看到WordPress了。按照提示输入用户名等信息,然后安装WordPress。等到它提示安装完成,那么WordPress的安装就算大功告成了。
最后稍加配置,再添加诸如内网映射等功能之后,站点就可以对外访问了。
用fig来配置
实践证明,用fig配置是最好的途径。在上面的基础上,我们只需在自己的docker目录下新建目录如wordpress-docker,再建fig配置文件fig.yml如下:
wordpress: image: "wordpress:latest" ports: - "8080:80" links: - db:mysql db: image: "mysql:latest" expose: - "3306" environment: - MYSQL_ROOT_PASSWORD=wordpress
总结:
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql docker run --name some-wordpress --link some-mysql:some-mysql -p 8080:80 -d wordpress
这时想到只是跑了数据库 但是没有设置啊
容器有自己的内部网络和 IP 地址,可以使用 docker inspect + 容器ID 获取容器的具体信息。
现在要设置 只能先把端口从docker映射到 本机,然后用 mysql连接
docker stop some-mysql #这句是删除实例的 docker rm some-mysql
然后又搞了一遍
docker run –name some-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql
进去 连接一下
#进入mysql容器 用命令行控制mysql创建数据库 docker exec -it some-mysql bash create database wordpress;
原文链接:https://blog.csdn.net/weixin_34117211/article/details/92031805