Docker 撰写 Hello World

一个非常基本的 docker-compose.yml 看起来像这样:

version: '2'
services:
  hello_world:
    image: ubuntu
    command: [/bin/echo, 'Hello world']

这个文件是为了有一个 hello_world 服务,这是从 ubuntu:latest 图像初始化的,当它运行时,它只是运行 echo 'Hello world'

如果你在 folder 目录(它包含这个 docker-compose.yml 文件),你可以做 docker-compose up 你应该看到

Creating folder_hello_world_1
Attaching to folder_hello_world_1
hello_world_1 | Hello world
folder_hello_world_1 exited with code 0

这从 ubuntu 映像创建了容器,并运行了 docker-compose.yml 上指定的命令

Docker-Compose 使用文件夹名称作为项目名称来为容器和网络添加前缀。要设置另一个项目名称,你可以调用 docker-compose --project-name NAME {up|down|...} 或者在 docker-compose.yml 旁边提供一个名为 .env 的文件,并在其中写入 COMPOSE_PROJECT_NAME=name。最好避免使用带连字符( - )的长项目名称,因为 docker 使用这种名称组成 bahaves 怪。

注意:docker-compose 允许你在单个主机上运行多个 docker 容器。如果要在多个节点上运行多个容器,请参阅 swarm / kubernetes 等解决方案。