Docker下部署wordpress
【关掉默认打开的selinux,防火墙不能关,关了会出现一个小小的bug】
首先,搞定mysql
1.search
-
$ docker search mysql
-
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
-
mysql MySQL is a widely used, open-source relati... 456 [OK]
2.pull
-
$ docker pull mysql
其次,考虑二者的联合
-
$ docker images
-
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
-
wordpress latest ecc04d6d638c 2 weeks ago 470 MB
-
mysql latest aca96d9e6b5c 2 weeks ago 282.7 MB
wordpress启动命令是这样的:
-
$ sudo docker run --name some-wordpress --link some-mysql:mysql -d wordpress
-
启动 WordPress 容器时可以指定的一些环境参数包括
-
-
-e WORDPRESS_DB_USER=... 缺省为 "root"
-
-e WORDPRESS_DB_PASSWORD=... 缺省为连接 mysql 容器的环境变量 MYSQL_ROOT_PASSWORD 的值
-
-e WORDPRESS_DB_NAME=... 缺省为 "wordpress"
-
-e WORDPRESS_AUTH_KEY=..., -e WORDPRESS_SECURE_AUTH_KEY=..., -e WORDPRESS_LOGGED_IN_KEY=..., -e WORDPRESS_NONCE_KEY=..., -e WORDPRESS_AUTH_SALT=..., -e WORDPRESS_SECURE_AUTH_SALT=..., -e WORDPRESS_LOGGED_IN_SALT=..., -e WORDPRESS_NONCE_SALT=... 缺省为随机 sha1 串
针对wordpress的启动命令,我们需要这样针对:
1.给wordpress可以起个名字,这个好办
2.--link参数,这需要我们先启动mysql,然后将其名字链接上
3.端口 -p参数,默认是80端口,但是被我占用了,这里我们映射到8080
启动的mysql的命令:
-
$ docker run --name mysql_wordpress -e MYSQL_ROOT_PASSWORD=wordpress -d mysql
mysql的密码,姑且这样暴露着吧。
对应mysql,wordpress的启动命令如下:
-
$ docker run --name docker_wordpress --link mysql_wordpress:mysql -p 8080:80 -d wordpress
接下来就可以在浏览器中输入http://localhost:8080进行wordpress的配置了。
Enjoy!
第三,用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
每次启动只需执行本目录下的fig up -d就可以了!
the object is not found