Node JS
  • SetUp Node&NVM
  • Folder Structure
  • Setup NodeJS Project
  • Library
    • Awilix
    • Swagger
    • Express
    • Jest
      • Supertest
    • Prettier
    • Eslint & Tslint
      • Tslint & Prettier
      • Tslint Plugin Prettier
      • Config With Airbnb
    • Husky And Friends
    • Sentry
  • INFRASTRUCTURE
    • Docker
      • Docker image
      • Docker container
      • Docker Volume
      • Docker command
      • Docker Compose
      • Problem & Solution
    • SonarQube
      • How to use in Nodejs
    • NGinX
    • ดูเพิ่มเติม
  • Note
    • .env declare type
    • Learn Link
Powered by GitBook
On this page
  1. INFRASTRUCTURE
  2. Docker

Problem & Solution

run docker คนละ script กันทำยังไงให้ แต่ละ containner รู้จักกันโดยไม่ใช้ IP

  1. สร้าง network

  2. ให้ containner ต่อ network เดียวกัน

Ex.

  • APP1

version: '3.4'
services:
    nginx:
        image: nginx
        container_name: nginx
        networks:
            - load-balancer
        volumes:
            - ${PWD}/default.conf:/etc/nginx/conf.d/default.conf:ro
        build:
            context: .
            dockerfile: ./Dockerfile
        ports:
            - "8888:80"
networks:
  load-balancer:
    driver: bridge
    name: server_load_balancer
  • APP2

version: '3.4'
services:
    weblinkauthenv2:
        image: weblinkauthenv2
        networks:
            - server_load_balancer
        container_name: weblinkauthen
        build:
            context: .
            dockerfile: ./Dockerfile
        environment:
            NODE_ENV: production
        ports:
            - 5001:5001
        env_file:
            - prod.env
networks:
  server_load_balancer:
    external: true

APP1 จะสร้าง network ชื่อ server_load_balancer แล้วกำหนด network ของ containner เป็น server_load_balancer APP2 จะ import network server_load_balancer เข้ามา แล้วกำหนด network ของ containnerเป็น server_load_balancer

ทีนี้เวลาเรียกใช้สามารถใช้ชื่อ containner แทน ip ได้เลย เช่น weblinkauthen, nginx ต้องเรียกภายใน network เดียวกันเท่านั้น

PreviousDocker ComposeNextSonarQube

Last updated 3 years ago