使用docker-compose对分布式docker项目进行统一部署

# 什么是docker-compose

`Docker Compose` 是 Docker 官方编排(Orchestration)项目之一,负责快速的部署分布式应用。如果你的项目中已经有很多docker启动的项目并且他们之间还需要进行通信,那么你就需要在项目中引入docker-compose了。如果你的项目中还没有引入docker的话,可以参考之前的文章。

# 安装与卸载

docker-compose官网安装教程:[https://docs.docker.com/compose/install/#install-compose](https://docs.docker.com/compose/install/#install-compose)

## 安装

在linux服务器下直接执行以下命令:

`sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose`

设置执行权限:`sudo chmod +x /usr/local/bin/docker-compose`

查看版本:`docker-compose --version`

## 卸载

如果是二进制包方式安装的,删除二进制文件即可:`sudo rm /usr/local/bin/docker-compose`

# 使用

## 编写docker-compose.yml

在之前的文章中已经使用`Dockerfile` 来构建镜像了。在docker-compose中需要构建`docker-compose.yml`文件。这是 Compose 使用的主模板文件。

```
version: '3'
services:

  web:
      container_name: eureka-server #容器名称
      image: xyh/demo #镜像名称
    ports:
     - "5000:5000" #绑定的端口
```

## 运行 compose 项目

`docker-compose up`

# 命令

`docker-compose`命令的基本的使用格式是:`docker-compose [-f=...] [options] [COMMAND] [ARGS...]`

## 命令选项

*   -f, --file FILE 指定使用的 Compose 模板文件,默认为 docker-compose.yml,可以多次指定。如果在不同的环境下你想要制定不同的运行文件则需要使用这个命令

*   -p, --project-name NAME 指定项目名称,默认将使用所在目录名称作为项目名。

*   --x-networking 使用 Docker 的可拔插网络后端特性

*   --x-network-driver DRIVER 指定网络后端的驱动,默认为 bridge

*   --verbose 输出更多调试信息。

*   -v, --version 打印版本并退出。
 

你可能感兴趣的:(docker)