docker:将docker命令转换为docker-compose语法

问题描述 投票:0回答:2
docker run --rm -it --name foo -h foo --net net1 ubuntu:latest /bin/bash
docker run --rm -it --name bar -h bar --net net1 ubuntu:latest /bin/bash

我想问一下如何在docker-compose语法中重写上面的命令?

docker docker-compose
2个回答
2
投票

默认情况下,docker-compose将为您的设置创建新的桥接器网络。但是,如果您已经自己配置了docker network,则可以在compose文件中指定它,将其标记为external network。

version: 3
services:
  foo:
    container_name: foo
    image: ubuntu:latest
    hostname: foo
    networks:
      - my_net

  bar:
    container_name: bar
    image: ubuntu:latest
    hostname: bar
    networks:
      - my_net

networks:  
 my_net:
   external:
   name: my_net

1
投票

对于

docker run --rm -it --name foo -h foo --net net1 ubuntu:latest /bin/bash
docker run --rm -it --name bar -h bar --net net1 ubuntu:latest /bin/bash

你需要使用类似下面的东西

version: 3
services:
  foo:
    image: ubuntu
    hostname: foo
  bar:
    image: ubuntu
    hostname: bar
© www.soinside.com 2019 - 2024. All rights reserved.