9 - Docker Compose 管理mysql和tomcat容器
工作情景一:用docker-compose管理mysql和tomcat容器
1. 创建并编辑docker-compose.yml(以yml文本格式存储相关信息)文本,文本名称是固定的
services:(#:一个文件可以管理多个容器)
mysql:(#:具体一个容器的名称,也可以称作一个服务的名称)
restart: always (#:总是开机自动启动:docker服务启动,容器自动启动)
image: daocloud.io/library/mysql:5.6.22 (#:镜像名称)
container_name: xs-mysql-compose(#:容器名称)
ports:(#:端口号,一个容器可以暴露出多个端口号)
- 3306:3306(#映射关系,不是键值对,所以不加空格)
environment:(#:环境)
MYSQL_ROOT_PASSWORD: 123456(#:数据库root的初始密码)
TZ: Asia/Shanghai(#:数据库使用的时区)
volumes:(#:数据卷)
- /opt/xs/volumes/mysql:/var/lib/mysql
tomcat:
restart: always (总是开机自动启动)
image: daocloud.io/library/tomcat:8.5.57-jdk8-openjdk
container_name: xs-tomcat-compose(容器名称)
ports:(端口号)
- 8080:8080
environment:(环境)
TZ: Asia/Shanghai
volumes:(数据卷)
- /opt/xs/volumes/tomcat/webapps:/usr/local/tomcat/webapps
- /opt/xs/volumes/tomcat/logs:/usr/local/tomcat/logs
2. 先检查当前Docker服务器上所有容器,然后停止所有容器,并删除所有容器,是为了防止端口重复,最后检查当前容器
docker stop $(docker ps -qa)
docker rm $(docker ps -qa)
docker ps -a
3. 一般将docker-compose.yml文件上传到Docker服务器的docker目录下(比如:/opt/xs)
4. 执行compose命令
1)执行docker-compose.yml文件,来创建并启动容器
docker-compose up -d
-d: 后台启动
2)关闭并删除容器
docker-compose down
3) 关闭、启动、重新启动
docker-compose stop
docker-compose start
docker-compose restart
4) 查看日志
docker-compose logs -f