非常教程

Docker 17参考手册

撰写 | Compose

Compose在产品中的使用 | Using Compose in production

当您在开发中使用 Compose 定义应用程序时,可以使用此定义在不同的环境中运行应用程序,如 CI,分段和生产。

部署应用程序的最简单方法是在单个服务器上运行它,这与运行开发环境的方式类似。如果要扩展应用程序,可以在 Swarm 群集上运行 Compose 应用程序。

修改您的撰写文件进行生产

您几乎可以肯定地希望对适用于实时环境的应用配置进行更改。这些更改可能包括:

  • 删除应用程序代码的任何卷绑定,以便代码保留在容器内,不能从外部更改
  • 绑定到主机上的不同端口
  • 以不同的方式设置环境变量(例如,减少记录的详细程度或启用电子邮件发送)
  • 指定重启策略(例如,restart: always)以避免停​​机
  • 添加额外的服务(例如,日志聚合器)

出于这个原因,你可能会想要定义一个额外的 Compose 文件,比如说production.yml,它指定了适合生产的配置。此配置文件只需包含您想要从原始撰写文件中进行的更改。额外的撰写文件可以应用于原始文件docker-compose.yml以创建新配置。

一旦你有第二个配置文件,告诉 Compose 使用它的-f选项:

docker-compose -f docker-compose.yml -f production.yml up -d

有关更完整的示例,请参阅使用多个撰写文件。

部署更改

当您对应用程序代码进行更改时,您将需要重建图像并重新创建应用程序的容器。若要重新部署名为web,你会用:

$ docker-compose build web
$ docker-compose up --no-deps -d web

这将首先重建图像web,然后停止,销毁,并重新创建web服务。--no-deps标志防止撰写也重新创建任何web依赖的服务。

在单台服务器上运行 Compose

您可以使用撰写通过设置来部署一个应用程序到远程主机的码头工人DOCKER_HOSTDOCKER_TLS_VERIFYDOCKER_CERT_PATH适当的环境变量。对于这样的任务,Docker Machine 使得管理本地和远程 Docker 主机变得非常简单,即使您不是远程部署,也是推荐的。

一旦你设置了你的环境变量,所有正常的docker-compose命令都可以在没有进一步配置的情况下工作。

在 Swarm 集群上运行 Compose

Docker Swarm 是一个 Docker 本地集群系统,它将相同的 API 公开为单个 Docker 主机,这意味着您可以将 Compose 用于 Swarm 实例并在多个主机上运行应用程序。

在集成指南中阅读有关 Compose / Swarm 集成的更多信息。

撰写文件

  • 安装组合
  • 命令行引用
  • 合成文件引用

撰写 | Compose相关

1.关于版本和升级 | About versions and upgrading (Compose)
2.ASP.NET Core + SQL Server on Linux (Compose)
3.CLI环境变量 | CLI environment variables (Compose)
4.命令行完成 | Command-line completion (Compose)
5.组成 | Compose
6.组合命令行参考 | Compose command-line reference
7.控制启动顺序 | Control startup order (Compose)
8.Django and PostgreSQL (Compose)
9.Docker堆栈和分布式应用程序包 | Docker stacks and distributed application bundles (Compose)
10.docker-compose构建 | docker-compose build
11.docker-compose 束 | docker-compose bundle
12.docker-compose配置 | docker-compose config
13.docker-compose创建 | docker-compose create
14.docker-compose down
15.docker-compose事件 | docker-compose events
16.docker-compose exec
17.docker-compose助手 | docker-compose help
18.docker-compose图像 | docker-compose images
19.docker-compose kill
20.docker-compose logs
21.docker-compose暂停 | docker-compose pause
22.docker-compose port
23.docker-compose ps
24.docker-compose pull
25.docker-compose push
26.docker-compose重启 | docker-compose restart
27.docker-compose rm
28.docker-compose运行 | docker-compose run
29.docker-compose 规模 | docker-compose scale
30.docker-compose开始 | docker-compose start
31.docker-compose结束 | docker-compose stop
32.docker-compose顶部 | docker-compose top
33.docker-compose 取消暂停 | docker-compose unpause
34.docker-compose up
35.环境文件 | Environment file (Compose)
36.Compose中的环境变量 | Environment variables in Compose
37.Compose中的扩展服务 | Extend services in Compose
38.常见问题 | Frequently asked questions (Compose)
39.开始 | Getting started (Compose)
40.安装Compose | Install Compose
41.链接环境变量(不建议使用) | Link environment variables (deprecated) (Compose)
42.Compose网络 | Networking in Compose
43.Docker Compose总览 | Overview of Docker Compose
44. docker-compose CLI总览 | Overview of docker-compose CLI
45.快速开始:Compose和WordPress | Quickstart: Compose and WordPress
46.Rails and PostgreSQL (Compose)
47.Compose的简单应用 | Sample apps with Compose
48.Using Compose with Swarm
49.版本1 | Version 1 (Compose)
50.版本2 | Version 2 (Compose)
51.版本3 | Version 3 (Compose)
Docker 17

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

主页 https://docker.com/
源码 https://github.com/docker/docker
版本 17
发布版本 17.06