Docker快速入门(五)docker-compose安装与基础用法

Wed Dec 20, 2017

700 Words|Read in about 2 Min
Tags: docker   Docker快速入门  

简介

docker-compose 可以用来定义和运行复杂应用的Docker工具,比如你的web应用需要用到好几个容器,mysql、redis和你自己的应用容器,它们之间需要相互协作、通信,一般都是同时启动和关闭的。如果手工一个一个启动、link,这样很麻烦,通常如果它们运行在同一台机器上,我们可以用docker-compose来管理,非常方便。

安装

如果你用的mac或windows桌面版docker,那么docker-compose已经自带了,如果是linux,可以在官方的github release页面下载最新版: https://github.com/docker/compose/releases
通常选择docker-compose-Linux-x86_64,下载下来重命名为docker-compose,并增加可执行权限:

chmod +x docker-compose

然后将其移到PATH下,比如:

mv docker-compose /usr/local/bin/

最后检验一下是否安装成功:

docker-compose --version

编写docker-compose.yml

要使用docker-compose,就必须定义docker-compose.yml配置文件,然后在配置文件所在目录执行docker-compose相关命令,配置文件示例:

version: "3" # 配置文件格式版本号
services:
  web:
    image: yourname/web # 镜像名
    container_name: web # 给容器起别名
    ports:
      - 8080:80 # 容器内80端口映射到宿主机8080端口
    volumes: # 挂载目录或文件
      - ./conf.toml:/etc/web/conf.toml
      - ./data:/data/web
    working_dir: /web # 改变当前工作目录
    command: python app.py # 改变默认启动命令
    depends_on: 
      - db # 依赖db这个service
      - redis # 依赖redis这个service
  db:
    image: mysql:5.6
  redis:
    image: redis

docker-compose 命令

执行docker-compose命令首先确保你的当前目录跟docker-compose.yml在同一目录下

启动

通常都是后台启动,加-d参数:

docker-compose up -d

docker compose up -d

查看运行状态

docker-compose ps

docker compose ps

停止

docker-compose down

docker compose down

See Also

Wed Dec 20, 2017

700 Words|Read in about 2 Min
Tags: docker   Docker快速入门