如何使用RabbitMQ Docker Compose的yml文件来构建Docker镜像?

8

我是新手,想要尝试使用docker,我知道如何拉取Ubuntu Linux的镜像并运行它。我只是想尝试一下RabbitMQ,网站上说我们可以使用一个名为docker-composer.yml的文件,内容如下:

rabbitmq:
  image: rabbitmq:management
  ports:
    - "5672:5672"
    - "15672:15672"

我在谷歌上搜索了一段时间,但只找到与如何编写复杂的YAML文件有关的网站。但我的问题是,如何使用这个YAML文件来构建/组合任何带有rabbitmq的docker镜像,以便我可以开始使用它?

2个回答

20

这里你可以找到一些例子:

https://github.com/Gsantomaggio/rabbitmqexample/tree/master/cluster_docker_compose

version: "2"
services:
  rabbit_node_1:
    environment:
      - RABBITMQ_ERLANG_COOKIE='secret_cookie'
    networks:
      - back
    hostname: rabbit_node_1
    image: "rabbitmq:3-management"
    ports:
      - "15672:15672"
      - "5672:5672"
    tty: true
    volumes:
      - rabbit1:/var/lib/rabbitmq
      - ./conf/:/etc/rabbitmq/
    command:  bash -c "sleep 10; rabbitmq-server;"
  rabbit_node_2:
    environment:
      - RABBITMQ_ERLANG_COOKIE='secret_cookie'
    networks:
      - back
    hostname: rabbit_node_2
    depends_on:
      - rabbit_node_1
    image: "rabbitmq:3-management"
    ports:
      - "15673:15672"
      - "5673:5672"
    tty: true
    volumes:
      - rabbit2:/var/lib/rabbitmq
      - ./conf/:/etc/rabbitmq/
    command:  bash -c "sleep 10; rabbitmq-server; "
volumes:
  rabbit1:
    driver: local
  rabbit2:
    driver: local

networks:
  back:

@gabriele,我们需要在/etc/hosts文件中创建主机条目吗?我有类似的配置,但它给我一个“process_not_running”的错误。 - kailash yogeshwar

1
这是一个简单的Docker Compose文件。
version: "3"

services:

  rabbitmq:
    image: rabbitmq
    command: rabbitmq-server
    expose:
      - 5672
      - 15672

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接