docker-compose.yml 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. # version: '3.0' # specify docker-compose version
  2. # Define the services/ containers to be run
  3. # services:
  4. # angular: # name of the first service
  5. # build: angular-client # specify the directory of the Dockerfile
  6. # ports:
  7. # - "4200:4200" # specify port mapping
  8. # express: # name of the second service
  9. # build: express-server # specify the directory of the Dockerfile
  10. # ports:
  11. # - "9991:9991" #specify ports mapping
  12. # links:
  13. # - database # link this service to the database service
  14. # database: # name of the third service
  15. # image: mongo # specify image to build container from
  16. # ports:
  17. # - "27017:27017" # specify port forwarding
  18. version: '3'
  19. networks:
  20. private:
  21. web:
  22. external:
  23. name: web
  24. #pipeline-test-mean-stack-docker_default:
  25. #pipeline-test-mean-stack-docker_private:
  26. #grafana:
  27. #volumes:
  28. # app_data: {}
  29. # database:
  30. services:
  31. express_preprod:
  32. image: node:12
  33. working_dir: /usr/src/app
  34. volumes:
  35. - ./express-server:/usr/src/app
  36. - /var/log:/var/www/app/log/root
  37. ports:
  38. - "4000:4000"
  39. networks:
  40. - web
  41. - private
  42. labels:
  43. - traefik.enable=true
  44. - traefik.http.routers.express_preprod.rule=Host(`api-preprod.foodgame.fr`)
  45. - traefik.http.services.express_preprod.loadbalancer.server.port=4000
  46. - traefik.http.routers.express_preprod.entrypoints=websecure
  47. - traefik.http.routers.express_preprod.tls.certresolver=myresolver
  48. links:
  49. - database_preprod
  50. restart: always
  51. command: ["npm", "start"]
  52. database_preprod:
  53. # container_name: mongo_"${ENV}"
  54. image: mongo:4.4.6
  55. ports:
  56. - "27017:27017"
  57. volumes:
  58. - ./backup:/backup
  59. - /var/lib/mongodb/data_preprod:/data/db
  60. # - database:/data/database
  61. labels:
  62. - traefik.enable=true
  63. - traefik.http.routers.database_preprod.rule=Host(`mongodb-preprod.foodgame.fr`)
  64. # - traefik.http.routers.apache_prod.rule=Host(`${URLMONGO}`)
  65. - traefik.http.services.database_preprod.loadbalancer.server.port=27017
  66. - traefik.http.routers.database_preprod.entrypoints=websecure
  67. - traefik.http.routers.database_preprod.tls.certresolver=myresolver
  68. networks:
  69. - web
  70. - private
  71. #- pipeline-test-FatboarProject_default
  72. #- pipeline-test-FatboarProject_private
  73. restart: always
  74. apache_preprod:
  75. # container_name: apache_"${ENV}"
  76. build:
  77. context: ./
  78. # dockerfile: build/docker/httpd/Dockerfile
  79. dockerfile: build/docker/apache/Dockerfile
  80. ports:
  81. - "8080:80"
  82. networks:
  83. - web
  84. - private
  85. #- pipeline-test-FatboarProject_default
  86. #- pipeline-test-FatboarProject_private
  87. volumes:
  88. - /var/log:/var/log/apache2
  89. labels:
  90. - traefik.enable=true
  91. - traefik.http.routers.apache_preprod.rule=Host(`angular-preprod.foodgame.fr`)
  92. # - traefik.http.routers.apache_prod.rule=Host(`${URLANGULAR}`)
  93. - traefik.http.services.apache_preprod.loadbalancer.server.port=80
  94. - traefik.http.routers.apache_preprod.entrypoints=websecure
  95. - traefik.http.routers.apache_preprod.tls.certresolver=myresolver
  96. restart: always