🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] # 简介 **compose简单配置文件** ~~~ #创建compose文件夹 :~$ mkdir -p ./docker/compose #进入到文件夹 :~$ cd ./docker/compose #创建yml文件 :~$ vim docker-compose.yml ~~~ **docker-compose.yml 文件内容** ~~~ version: '2' services: web1: image: nginx ports: - "9999:80" container_name: nginx-web1 web2: image: nginx ports: - "8888:80" container_name: nginx-web2 ~~~ **运行一个容器** ~~~ #后台启动: docker-compose up -d #注意: #如果不加-d,那么界面就会卡在前台 #查看运行效果 docker-compose ps ~~~ # 命令详解 注意: 所有命令尽量都在docker compose项目目录下面进行操作 项目目录:docker-compose.yml所在目录 compose服务启动、关闭、查看 ~~~ #后台启动: docker-compose up -d #删除服务 docker-compose down #查看正在运行的服务 docker-compose ps ~~~ 容器开启,关闭,删除 ~~~ #启动一个服务 docker-compose start <服务名> #注意: #如果后面不加服务名,会停止所有的服务 #停止一个服务 docker-compose stop <服务名> #注意: #如果后面不加服务名,会停止所有的服务 #删除服务 docker-compose rm #注意: #这个docker-compose rm不会删除应用的网络和数据卷。工作中尽量不要用rm进行删除 ~~~ # 其他信息查看 ~~~ #查看运行的服务 docker-compose ps #查看服务运行的日志 docker-compose logs -f #注意: #加上-f 选项,可以持续跟踪服务产生的日志 #查看服务依赖的镜像 docke-compose images #进入服务容器 docker-compose exec <服务名> <执行命令> #查看服务网络 docker network ls ~~~ # compose文件详解 ~~~ version: '2' # compose 版本号 services: # 服务标识符 web1: # 子服务命名 image: nginx # 服务依赖镜像属性 ports: # 服务端口属性 - "9999:80" # 宿主机端口:容器端口 container_name: nginx-web1 # 容器命名 ~~~ 格式详解: ~~~ compose版本号、服务标识符必须顶格写 属性名和属性值是以': '(冒号+空格) 隔开 层级使用' '(两个空格)表示 服务属性使用' - '(空格空格-空格)来表示 ~~~ # compose属性介绍 ~~~ #镜像: 格式: image: 镜像名称:版本号 举例: image: nginx:latest #容器命名: 格式: container_name: 自定义容器命名 举例: container_name: nginx-web1 #数据卷: 格式: volumes: - 宿主机文件:容器文件 举例: volumes: - ./linshi.conf:/nihao/haha.sh #端口: 格式: ports: - "宿主机端口:容器端口" 举例: ports: - "9999:80" #镜像构建: 格式: build: Dockerfile 的路径 举例: build: . build: ./dockerfile_dir/ build: /root/dockerfile_dir/ #镜像依赖: 格式: depends_on: - 本镜像依赖于哪个服务 举例: depends_on: - web1 ~~~