version: '3' networks: private: web: external: name: web volumes: mongo_data_dev: mongo_backups_dev: services: express_dev: build: context: ./express-server ports: - "4001:4000" # port hôte différent pour éviter conflit local networks: - web - private labels: - traefik.enable=true - traefik.http.routers.express_dev.rule=Host(`api-dev.foodgame.fr`) - traefik.http.services.express_dev.loadbalancer.server.port=4000 - traefik.http.routers.express_dev.entrypoints=websecure - traefik.http.routers.express_dev.tls.certresolver=myresolver depends_on: - database_dev environment: - MONGODB_URI=mongodb://admin:azerty10@database_dev:27017/mean-fatboar-db?authSource=admin restart: always database_dev: image: mongo:4.4.6 # ports: # - "27017:27017" volumes: - mongo_data_dev:/data/db environment: - MONGO_INITDB_ROOT_USERNAME=admin - MONGO_INITDB_ROOT_PASSWORD=azerty10 - MONGO_INITDB_DATABASE=mean-fatboar-db networks: - private restart: always mongodb-backup-dev: image: tiredofit/mongodb-backup:latest container_name: mongodb-backup-dev volumes: - mongo_backups_dev:/backup environment: - MONGODB_HOST=database_dev - MONGODB_PORT=27017 - MONGODB_USER=admin - MONGODB_PASS=azerty10 - MONGODB_AUTHENTICATION_DATABASE=admin - BACKUP_LOCATION=/backup - BACKUP_COMPRESSION=GZIP - BACKUP_SPLIT_DB=TRUE - BACKUP_BEGIN=TRUE - SCHEDULE=*/30 * * * * - BACKUP_RETAIN_DAYS=7 - BACKUP_CLEANUP_TIME=0430 - NOTIFICATION_TYPE=none - DEBUG_MODE=TRUE - CONTAINER_ENABLE_MONITORING=TRUE - CONTAINER_NAME=mongodb-backup-dev depends_on: - database_dev networks: - private restart: unless-stopped angular_ssr_dev: build: context: ./ dockerfile: build/docker/angular-ssr/Dockerfile ports: - "4002:4000" networks: - web - private labels: - traefik.enable=true - traefik.http.routers.angular_ssr_dev.rule=Host(`angular-dev.foodgame.fr`) - traefik.http.services.angular_ssr_dev.loadbalancer.server.port=4000 - traefik.http.routers.angular_ssr_dev.entrypoints=websecure - traefik.http.routers.angular_ssr_dev.tls.certresolver=myresolver restart: always # apache_dev: # build: # context: ./ # dockerfile: build/docker/apache/Dockerfile # ports: # - "8080:80" # networks: # - web # - private # volumes: # - /var/log:/var/log/apache2 # labels: # - traefik.enable=true # - traefik.http.routers.apache_dev.rule=Host(`angular-dev.foodgame.fr`) # - traefik.http.services.apache_dev.loadbalancer.server.port=80 # - traefik.http.routers.apache_dev.entrypoints=websecure # - traefik.http.routers.apache_dev.tls.certresolver=myresolver # restart: always # version: '3.0' # specify docker-compose version # Define the services/ containers to be run # services: # angular: # name of the first service # build: angular-client # specify the directory of the Dockerfile # ports: # - "4200:4200" # specify port mapping # express: # name of the second service # build: express-server # specify the directory of the Dockerfile # ports: # - "9991:9991" #specify ports mapping # links: # - database # link this service to the database service # database: # name of the third service # image: mongo # specify image to build container from # ports: # - "27017:27017" # specify port forwarding # version: '3' # networks: # private: # web: # external: # name: web # #pipeline-test-mean-stack-docker_default: # #pipeline-test-mean-stack-docker_private: # #grafana: # volumes: # # app_data: {} # mongo_data_dev: # services: # express_dev: # build: # context: ./express-server # ports: # - "4000:4000" # networks: # - web # - private # labels: # - traefik.enable=true # - traefik.http.routers.express_dev.rule=Host(`api-dev.foodgame.fr`) # - traefik.http.services.express_dev.loadbalancer.server.port=4000 # - traefik.http.routers.express_dev.entrypoints=websecure # - traefik.http.routers.express_dev.tls.certresolver=myresolver # links: # - database_dev # restart: always # database_dev: # # container_name: mongo_"${ENV}" # image: mongo:4.4.6 # ports: # - "27017:27017" # volumes: # - ./backup:/backup # - mongo_data_dev:/data/db # # - /var/lib/mongodb/data_dev:/data/db # # - database:/data/database # labels: # - traefik.enable=true # - traefik.http.routers.database_dev.rule=Host(`mongodb-dev.foodgame.fr`) # # - traefik.http.routers.apache_prod.rule=Host(`${URLMONGO}`) # - traefik.http.services.database_dev.loadbalancer.server.port=27017 # - traefik.http.routers.database_dev.entrypoints=websecure # - traefik.http.routers.database_dev.tls.certresolver=myresolver # networks: # - web # - private # #- pipeline-test-FatboarProject_default # #- pipeline-test-FatboarProject_private # restart: always # apache_dev: # # container_name: apache_"${ENV}" # build: # context: ./ # # dockerfile: build/docker/httpd/Dockerfile # dockerfile: build/docker/apache/Dockerfile # ports: # - "8080:80" # networks: # - web # - private # #- pipeline-test-FatboarProject_default # #- pipeline-test-FatboarProject_private # volumes: # - /var/log:/var/log/apache2 # labels: # - traefik.enable=true # - traefik.http.routers.apache_dev.rule=Host(`angular-dev.foodgame.fr`) # # - traefik.http.routers.apache_prod.rule=Host(`${URLANGULAR}`) # - traefik.http.services.apache_dev.loadbalancer.server.port=80 # - traefik.http.routers.apache_dev.entrypoints=websecure # - traefik.http.routers.apache_dev.tls.certresolver=myresolver # restart: always