首页 > 解决方案 > 用于 nodejs、mongo、redis、rabbitmq 的 docker-compose 文件

问题描述

我需要一个具有节点 12、mongo 4.4、redis 4.0.6 和 rabbitmq 3.8.9 的 docker compose。这就是我现在在我的 docker-compose 中所拥有的,显然它不起作用。该应用似乎无法连接到 redis 和 rabbitmq。

version: '3'
services:
  app:
    container_name: malllog-main
    restart: always
    build: .
    ports:
      - '3000:3000'
    external_links:
      - mongo
      - redis
      - rabbitmq
  mongo:
    container_name: malllog-mongo
    image: mongo:4.4
    ports:
      - '27017:27017'
  redis:
    container_name: malllog-redis
    image: redis:4.0.6
    ports:
      - '6379:6379'
  rabbitmq:
    container_name: malllog-rabbitmq
    image: rabbitmq:3.8.9
    ports:
      - '15672:15672'
      - '5672:5672'

标签: mongodbdockerredisdocker-composerabbitmq

解决方案


下面是我用于我的微服务测试项目的 docker-compose 文件,它适用于我,你可以尝试一下。

       version: '3'
       services:
         my-ui:
           container_name: my-ui
           build: ./my-ui
           ports:
             - "80:80"
           depends_on:
             - my-api
           networks:
             - test-network

         my-api:
           container_name: my-api
           restart: always
           build:
             context: my-api
             dockerfile: Dockerfile
           ports:
             - "8080:8080"
           #command: mvn clean spring-boot:run -Dspring-boot.run.profiles=docker
           depends_on:
             - rabbitmq
             - mp-redis
           networks:
             - test-network

         rabbitmq:
           container_name: rabbitmq
           image: rabbitmq:management
           ports:
             - "5672:5672"
             - "15672:15672"
           restart: always
           networks:
             - test-network

         mp-redis:
           container_name: mp-redis
           image: redis:5
           ports:
             - "6379:6379"
           restart: always
           networks:
             - test-network

         mp-mongodb:
           container_name: mp-mongodb
           image: mongo:3.6
           restart: always
           environment:
             MONGO_DATA_DIR: /data/db
             MONGO_LOG_DIR: /dev/null
           volumes:
             - mongo-data:/data/db
           ports:
             - "27017:27017"
           command: mongod --smallfiles --logpath=/dev/null # --quiet
           networks:
             - test-network

       volumes:
         mongo-data:
       networks:
         test-network:

推荐阅读