λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

μΉ΄ν…Œκ³ λ¦¬ μ—†μŒ

[docker] compose.yml 파일 μž‘μ„±

728x90
λ°˜μ‘ν˜•

πŸ”΅ compose.yml νŒŒμΌμ΄λž€?

닀쀑 container Docker app 을 μ •μ˜ν•˜κ³  μ‹€ν–‰ν•˜κΈ° μœ„ν•œ 도ꡬ이닀. docker build λ₯Ό ν•˜κ²Œ 되면 단일 ν΄λ”λ‘œ app을 μ„œλΉ„μŠ€ ν•˜κ²Œ λ˜λŠ”λ°, docker-compose.yml 은 μ—¬λŸ¬ ν΄λ”μ˜ λ³΅μž‘ν•œ app을 μ‰½κ²Œ μ‹€ν–‰, 관리 ν•  수 있게 ν•΄μ€€λ‹€.

🟒 μž‘μ„±μ˜ˆμ‹œ

version: "3.9"

services:
  express_server:
    build: ./server
    ports:
      - "5000:5000"
    depends_on:
      - db
    environment:
      - MONGODB_URI=mongodb://db:27017/color99b

  db:
    image: mongo:latest
    ports:
      - "27017:27017"

  next_server:
    build: ./servertest
    ports:
      - "3000:3000"
    environment:
      - EXPRESS_SERVER_URL=http://express_server:5000

🟣 μž‘μ„± μ˜ˆμ‹œ μ„€λͺ…

- version : Docker compose 파일 ν˜•μ‹μ˜ 버전.

- services : app을 κ΅¬μ„±ν•˜λŠ” μ„œλΉ„μŠ€(container) λ₯Ό μ •μ˜ν•˜λŠ”λ° μ‚¬μš©λœλ‹€. (express, next, db 3개의 ꡬ성)

- express : backEnd μ„œλ²„
 - build : μœ„ service 에 λŒ€ν•œ Dockerfile 이 ν¬ν•¨λœ directory의 경둜
 - ports : μ»¨ν…Œμ΄λ„ˆμ— μ˜ν•΄ λ…ΈμΆœλ  포트, 호슀트의 포트 : 기호둜 mapping
 - depends_on : μœ„ service κ°€ μ˜μ‘΄ν•˜λŠ” μ„œλΉ„μŠ€λ₯Ό μ§€μ •ν•œλ‹€.
 - environment : μ»¨ν…Œμ΄λ„ˆμ— 전달할 ν™˜κ²½λ³€μˆ˜. mongodb에 μ—°κ²°ν•˜κΈ°μœ„ν•΄ uriλ₯Ό μ „λ‹¬ν•œλ‹€.

- db : database
 - image: mongo의 docker image 버전

- next : front μ„œλ²„
 - ν•˜μœ„ ν•­λͺ©μ€ μœ„ express 와 κ°™μŒ. 

🟠 μ‹€ν–‰

docker-compose up

 

728x90
λ°˜μ‘ν˜•


Calendar
Β«   2024/09   Β»
일 μ›” ν™” 수 λͺ© 금 ν† 
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Visits
Today
Yesterday