- Docker-compose
Docker-compose 是Dcoker官方推出的Docker容器的一键编排工具,使用Docker-compose可以批量启动容器、停止容器等等。
- 安装
- github地址
https://github.com/docker/compose/tree/v2.20.1
下载地址
https://github.com/docker/compose/releases
直接下载已经编译好的二进制文件即可。
- 上传
mv xxx docker-compose
chmod 777 docker-compose
mv docker-compose /usr/local/bin
- Docker-compose文件编写
docker-compose的文件格式为yml格式,可以批量配置多个容器的配置,挂载的数据卷、映射的端口等等。通过编写好的yml文件,使用docker-compose 一键启动配置好的容器或者停止容器。
version: '3.1'
services:
mysql: #服务的名称
restart: always #随着服务启动就启动
image: daocloud.io/library/mysql:5.7.6
container-name: mysql-3306
ports:
- 3306:3306 #指定此容器的端口映射
environment:
MYSQL_ROOT_PASSWORD: root
TZ: Asiz/Shanghai
volumes:
- /opt/module/docker/mysql/data:/var/lib/mysql #映射mysql的数据目录到宿主机,保存数据
- /opt/module/docker/mysql/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf #把mysql的配置文件映射到容器的相应目录
tomcat:
restart: always
image: daocloud.io/library/tomcat:8.5.15-jre8
container_name: tomcat-8080
ports:
- 8080:8080
environment:
JS: etc
volumes:
- /opt/module/docker/tomcat/webapps:/usr/local/tomcat/webapps #tomcat的核心应用挂载出来
- /opt/module/docker/tomcat/logs:/usr/local/tomcat/logs
- Docker-compose常用命令
docker-compose up -d nginx 构建启动nignx容器
docker-compose exec nginx bash 登录到nginx容器中
docker-compose down 删除所有nginx容器,镜像
docker-compose ps 显示所有容器
docker-compose restart nginx 重新启动nginx容器
docker-compose run --no-deps --rm php-fpm php -v 在php-fpm中不启动关联容器,并容器执行php -v 执行完成
后删除容器
docker-compose build nginx 构建镜像 。
docker-compose build --no-cache nginx 不带缓存的构建。
docker-compose logs nginx 查看nginx的日志
docker-compose logs -f nginx 查看nginx的实时日志
docker-compose config -q 验证(docker-compose.yml)文件配置,当配置正确时,不输出任何内容,当文件配
置错误,输出错误信息。
docker-compose events --json nginx 以json的形式输出nginx的docker日志
docker-compose pause nginx 暂停nignx容器
docker-compose unpause nginx 恢复ningx容器
docker-compose rm nginx 删除容器(删除前必须关闭容器)
docker-compose stop nginx 停止nignx容器
docker-compose start nginx 启动nignx容器 start命令必须是一个已经存在的容器,相当于docker的start 容器不存在要先运行起来
运行yml文件中的所有容器
docker-compose up -d
注意:以上的操作命令需要在有 docker-compose.yml 目录下去执行。