如何在circleci中使用docker容器中的rabbitmq定义文件?

t5fffqht  于 2022-11-23  发布在  RabbitMQ
关注(0)|答案(1)|浏览(138)

我使用definitions.json文件来定义rabbitmq的用户和队列配置。

services:
      rabbitmq:
        image: rabbitmq:3.8.16-management-alpine
        container_name: 'rabbitmq'
        ports:
          - 5672:5672
          - 15672:15672
        networks:
          - XXX
        volumes:
          - ./conf/rabbitmq-definitions.json:/etc/rabbitmq/definitions.json:ro

但是,查看circleci文档,似乎无法在circleci中挂载卷。有没有其他方法可以添加定义文件,使其也能与circleci一起工作?

noj0wjuj

noj0wjuj1#

您使用的是什么执行器类型?如果您使用machine执行器而不是docker执行器,则肯定可以在CircleCI中使用卷。当我需要执行docker rundocker-compose时,我使用机器执行器进行集成测试。我手边没有docker-compose示例,因为我有使用docker-compose但没有卷的工作流。我确实有多个工作流使用machine执行器,并执行docker run命令将工作区中的特定文件夹安装为卷。因此,您的作业将如下所示:

integration_test:
  machine:
    image: ubuntu-2004:202010-01
  steps:
    - checkout
    - attach_workspace:
        at: ~/my-app
    - run: |
        make functional-test

您可以在此处找到一个示例机器执行器作业,还可以在此处找到一个在调用make functional-test时执行的测试,该测试使用卷执行Docker运行

相关问题