很多时候我想用一个工具只是做一个尝试,于是希望它可以:
- 可快速启动,不要安装一堆系统级依赖
- 可快速清除,不留痕迹
docker 就完美符合这些要求,而且操作方便。再配合docker-compose,几乎一键完成了。
下面我们来快速启动一个 wordpress 和它配套的 mysql 。
步骤
创建docker-compose.yml
:
version: '2.1'
services:
wordpress:
depends_on:
- db
image: wordpress
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
db:
image: mysql
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: admin
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
ports:
- "3306:3306"
volumes:
db_data:
注:由于电脑限制,我只能使用 docker toolbox ,支持的 docker-compose.yml 最高版本只能到 2.1 。
接下来一键启动:
$ docker-compose up
如果遇到 mysql 死活连不上的情况(Access denied for user
),那很有可能是因为提供的密码不对。上面设置的环境变量只在第一次启动容器时有效,后面启动时,如果容器已经存在了,docker 会尝试保留上一次的数据,造成的结果就是,新设置的密码没有生效。这时,我们需要先删除已有容器:
$ docker-compose rm -v
大功告成。
网友评论