Docker μ 체 ν¬μ€ν
[Docker] (1) λ컀 κ°λ μ€λͺ | λ컀λ μ μ¬μ©νλ κ±ΈκΉ?
[Docker] (2) λ컀 & λ컀컴ν¬μ¦ λ€μ΄λ‘λ
[Docker] (3) λ컀 ν΅μ¬ κ°λ - μ΄λ―Έμ§, 컨ν μ΄λ, λ컀 νλΈ
[Docker] (5) λ컀 run λͺ λ Ήμ΄ μ΅μ , λ컀 컨ν μ΄λκ° μ’ λ£λμ§ μκ² νλ λ°©λ²
[Docker] (6) λ컀 컨ν μ΄λλ‘ μ μνκΈ° - docker exec & docker attach
[Docker] (7) λ컀 volume(λ³Όλ₯¨) μ΅μ - 컨ν μ΄λ ν΄λμ νΈμ€νΈ ν΄λ μ°κ²°νκΈ°
[Docker] (9) Dockerfile(λ컀νμΌ) - μ€λ§νΈνκ² λ컀 μ΄λ―Έμ§λ₯Ό λΉλνλ λ°©λ²
[Docker] (10) Dockerfile λΉλ μμ | ENTRYPOINT μ CMDμ μ°¨μ΄
[Docker] (11) λ컀 컨ν μ΄λμ vscode μ°λνκΈ° | λ컀 컨ν μ΄λμμ κ°λ°
[Docker] (12) κΉνλΈλ‘ λ컀 μ΄λ―Έμ§ 곡μ νκΈ° | Packages Container Registry
Dokcer (λ컀)
λ컀(Docker)λ 컨ν μ΄λ κΈ°λ° κ°μν νλ«νΌμΌλ‘, μμ© νλ‘κ·Έλ¨κ³Ό κ·Έ μ’ μμ±μ 격리λ νκ²½μΈ μ»¨ν μ΄λλ‘ ν¨ν€μ§νμ¬ μ€ννλ κΈ°μ μ΄λ€. μ΄λ₯Ό ν΅ν΄ μμ© νλ‘κ·Έλ¨μ μλ‘ λ€λ₯Έ νκ²½μμλ μΌκ΄λκ² μ€νν μ μκ³ , κ°λ° νκ²½κ³Ό μ΄μ νκ²½ μ¬μ΄μ μ°¨μ΄λ‘ μΈν λ¬Έμ λ₯Ό μ€μΌ μ μλ€. λ컀 컨ν μ΄λλ κ°λ³κ³ λΉ λ₯΄λ©° νμ₯μ±μ΄ μ’μμ κ°λ° λ° λ°°ν¬ νλ‘μΈμ€λ₯Ό κ°μννλ λ° μ¬μ©λλ€.
*컨ν μ΄λ : κ°μν κΈ°μ μ μ΄μ©νμ¬ μ΄ν리μΌμ΄μ κ³Ό κ°λ° νκ²½μ 격리λ 곡κ°μμ μ€ννλ λ¨μ
λ컀 μ»΄ν¬μ¦(Docker Compose)λ μ¬λ¬ κ°μ λ컀 컨ν μ΄λλ₯Ό μ μνκ³ μ€ννκΈ° μν λꡬλ‘, νλμ μ€μ νμΌλ‘ μ¬λ¬ κ°μ 컨ν μ΄λλ₯Ό κ΄λ¦¬νκ³ , 컨ν μ΄λ κ°μ λ€νΈμν¬ λ° μ’ μμ±μ μ€μ νλ λ° μ¬μ©λλ€. μ£Όλ‘ λ³΅μ‘ν μμ© νλ‘κ·Έλ¨μ΄ μ¬λ¬ μ»΄ν¬λνΈλ‘ ꡬμ±λμ΄ μμ λ μ¬μ©νλ€.
Virtual Machine vs Docker
컨ν μ΄λ κΈ°μ μ΄ μλ κΈ°μ‘΄μ κ°μν λ°©μμ μ£Όλ‘ OSλ₯Ό κ°μννλ€. VMware, VirtualBoxμ κ°μ κ°μλ¨Έμ μ νΈμ€νΈ OS μμ κ²μ€νΈ OS μ 체λ₯Ό κ°μννμ¬ μ¬μ©νλ λ°©μμΌλ‘ λ컀μ 컨ν μ΄λ λ°©μκ³Όλ ν° μ°¨μ΄κ° μλ€.
- κ°μλ¨Έμ
- κ°μλ¨Έμ μ νΈμ€νΈ μ΄μ체μ μμ κ°μνλ νλμ¨μ΄ κ³μΈ΅μ μμ±νκ³ , κ° κ°μ λ¨Έμ μ λ 립λ μ΄μ체μ , 컀λ, λλΌμ΄λ² λ±μ κ°μ§
- μ΄λ‘ μΈν΄ 무κ²κ³ λμ μμ μλΉκ° νμ
- μ΄μ체μ μ λΆν κ³Όμ μ΄ νμνλ―λ‘ μκ°μ΄ μ€λ κ±Έλ¦Ό
- λ 립λ μ΄μ체μ λ₯Ό κ°μ§λ―λ‘ λ©λͺ¨λ¦¬, λμ€ν¬ κ³΅κ° λ± μμμ λ§μ΄ μλΉ
- Docker 컨ν
μ΄λ
- Docker 컨ν μ΄λλ νΈμ€νΈ μ΄μ체μ μ 컀λμ 곡μ νλ©°, κ°λ³κ² 격리λ νκ²½μ μμ±
- κ°μ λ¨Έμ λ³΄λ€ λ κ°λ²Όμ°λ©° ν¨μ¨μ μΌλ‘ μ€ν
- μ΄λ―Έμ§μ 컨ν μ΄λ λ μ΄μ΄λ₯Ό μ¬μ©νμ¬ λΉ λ₯΄κ² μμ±λλ©°, μ€ν μλκ° λ§€μ° λΉ λ¦
- 컨ν μ΄λλ νΈμ€νΈ μ΄μ체μ μ 컀λμ 곡μ νλ―λ‘ κ°λ³κ³ ν¨μ¨μ μΌλ‘ μμμ νμ©
κ²°λ‘ λ§ μκΈ°νλ©΄ κΈ°μ‘΄ κ°μλ¨Έμ μ 무κ²κ³ λ리μ§λ§, λ컀 컨ν μ΄λλ κ°λ³κ³ λΉ λ₯΄κ² μ€νλλ©° νΈμ€νΈμ μ΄μ체μ μ 컀λμ 곡μ νλ λ°©μμΌλ‘ λμνλ€λ κ²μ΄λ€. λν 컨ν μ΄λ κΈ°μ μ μ ν리μΌμ΄μ λ°°ν¬μ κ΄λ¦¬λ₯Ό λ ν¨μ¨μ μΌλ‘ μ²λ¦¬ν μ μλ λ°©λ²μ μ 곡νλ€.
λ컀λ₯Ό μ¬μ©νλ μ΄μ
- νκ²½ μΌμΉμ±: λ€μν νκ²½μμ λμΌν μ€ν νκ²½μ 보μ₯νλ€. κ°λ° νκ²½κ³Ό μ΄μ νκ²½μ μ°¨μ΄λ‘ μΈν λ¬Έμ λ₯Ό λ°©μ§νλ©°, μμ© νλ‘κ·Έλ¨μ μ΄λμλ μ€νν μ μλ€.
- νΈλ¦¬ν λ°°ν¬: λ컀 컨ν μ΄λλ μ΄λ―Έμ§λ‘ ν¨ν€μ§λμ΄ λ°°ν¬λλ―λ‘, μ΄ν리μΌμ΄μ λ°°ν¬κ° κ°λ¨ν΄μ§λ€. μ΄λ―Έμ§λ₯Ό 곡μ νκ±°λ λ°°ν¬ν λ μ©μ΄νλ©°, λΉ λ₯Έ νμ₯μ΄ κ°λ₯νλ€.
- 격리λ νκ²½: λ컀λ κ° μ»¨ν μ΄λλ₯Ό 격리λ νκ²½μΌλ‘ μ€ννλ―λ‘, νλμ 컨ν μ΄λμμ λ°μν λ¬Έμ κ° λ€λ₯Έ 컨ν μ΄λμ μν₯μ μ£Όμ§ μλλ€.
- μμ ν¨μ¨μ±: κ°μ λ¨Έμ κ³Ό λΉκ΅ν΄ λ κ°λ³κ³ λΉ λ₯΄λ©°, νΈμ€νΈ μμ€ν μ 리μμ€λ₯Ό ν¨μ¨μ μΌλ‘ νμ©ν μ μλ€.
- μ€μΌμΌλ§: 컨ν μ΄λ κΈ°λ° μν€ν μ²λ μ¬μ΄ μ€μΌμΌλ§μ΄ κ°λ₯νμ¬ μꡬμ λ°λΌ μμ© νλ‘κ·Έλ¨μ νμ₯ν μ μλ€.
μ΄λ €μ΄ λ§λ‘ μ€λͺ νμ§λ§, κ²°κ΅ λ컀λ κ°λ°μ νΈνκΈ° νκΈ° μν λꡬμ΄λ€. κ°λ°μμκ² κ°λ° νκ²½ μΈν μ΄λ λ²κ±°λ½κ³ μκ°μ΄ λ§μ΄ μμλλ μμ μ΄λ€. νΉν μ¬λ¬ κ°λ°μκ° νμ μ νλ κ²½μ°, κ°μ λ€λ₯Έ μ΄μ체μ λ λΌμ΄λΈλ¬λ¦¬ λ²μ μΌλ‘ μΈν΄ μΌκ΄λ κ°λ° νκ²½μ μ μ§νκΈ° μ΄λ €μΈ μ μλ€. νμ§λ§ λ컀λ₯Ό μ¬μ©νλ©΄ κ°κ°μ νλ‘μ νΈλ₯Ό 격리λ 컨ν μ΄λλ‘ μ€ννμ¬ κ°λ°ν μ μλ€. μ΄λ‘μ¨ κ°μμ κ°λ° νκ²½μ ꡬμ±νλ λ²κ±°λ‘μμ λ μ μκ³ , λμ± ν¨μ¨μ μΈ κ°λ°κ³Ό νμ μ΄ κ°λ₯ν΄μ§λ κ²μ΄λ€.
λ컀 μ¬μ© μμ
- μΉ κ°λ°: λ컀λ₯Ό μ¬μ©νμ¬ μΉ μ ν리μΌμ΄μ μ κ°λ°νλ©΄, κ°λ° νκ²½μ λμΌνκ² μ€μ νκ³ λ€λ₯Έ νμκ³Όμ νμ μ μ©μ΄νκ² ν μ μλ€. κ°λ° μ€μΈ μ ν리μΌμ΄μ μ μλ², λ°μ΄ν°λ² μ΄μ€, μΊμ± μμ€ν λ±μ κ°κ°μ λ컀 컨ν μ΄λλ‘ μ€ννλ©΄ νκ²½ μΌμΉμ±μ μ μ§νλ©΄μ μμ ν μ μλ€.
- μλ² κ°λ°: λ§μ΄ν¬λ‘μλΉμ€ μν€ν μ²μμλ κ° μλΉμ€λ₯Ό λ 립μ μΈ λ컀 컨ν μ΄λλ‘ κ΅¬μ±νμ¬ κ°λ°νκ³ λ°°ν¬ν μ μλ€. κ° μλΉμ€λ λ 립λ μ½λλ² μ΄μ€μ μ’ μμ±μ κ°μ§λ©°, κ°λ³μ μΌλ‘ μ€μΌμΌλ§μ΄ κ°λ₯νλ€.
- AI λͺ¨λΈ κ°λ°: AI λͺ¨λΈμ κ°λ°νκ³ λ°°ν¬ν λλ λ컀λ₯Ό νμ©ν μ μλ€. μλ₯Ό λ€μ΄, AI λͺ¨λΈμ μ€ννλ λ컀 컨ν μ΄λλ₯Ό μμ±νκ³ λ°°ν¬ν μ μλ€. μ΄ μ»¨ν μ΄λλ λͺ¨λΈ μΆλ‘ μ μννκ³ , νμν λΌμ΄λΈλ¬λ¦¬ λ° μ’ μμ±μ ν¬ν¨ν μ μλ€.
λ컀 μ¬μ© λ°©λ²
- λ컀 μ΄λ―Έμ§ λΉλ: Dockerfileμ μμ±νμ¬ λ컀 μ΄λ―Έμ§λ₯Ό μμ±. μ΄λ―Έμ§λ 컨ν μ΄λ μ€ν νκ²½μ μ μνλλ° μ¬μ©λλ€. μλ₯Ό λ€μ΄, μΉ μ ν리μΌμ΄μ μ κ²½μ° μΉ μλ², νλ μμν¬, λΌμ΄λΈλ¬λ¦¬ λ±μ ν¬ν¨νλ€.
- λ컀 컨ν μ΄λ μ€ν: μ΄λ―Έμ§λ₯Ό κΈ°λ°μΌλ‘ λ컀 컨ν μ΄λλ₯Ό μ€ν. 컨ν μ΄λλ 격리λ νκ²½μμ μ€νλλ―λ‘, κ°κ°μ 컨ν μ΄λλ λ 립μ μΌλ‘ λμνλ€.
- 컨ν μ΄λ λ€νΈμνΉ: λ컀 컨ν μ΄λ κ°μ ν΅μ μ μν΄ λ€νΈμν¬ μ€μ μ ꡬμ±. νμν κ²½μ° νΈμ€νΈμ 컨ν μ΄λ κ°μ ν¬νΈ 맀νμ μ€μ ν μ μλ€.
- 컨ν μ΄λ κ΄λ¦¬: λ컀 μ»΄ν¬μ¦λ₯Ό μ¬μ©νμ¬ μ¬λ¬ 컨ν μ΄λλ₯Ό μ μνκ³ κ΄λ¦¬ν μ μλ€. μ΄λ₯Ό ν΅ν΄ 볡μ‘ν μν€ν μ²μ μ ν리μΌμ΄μ μ κ΄λ¦¬νκΈ° μ©μ΄ν΄μ§λ€.
- μ΄λ―Έμ§ 곡μ λ° λ°°ν¬: λΉλν μ΄λ―Έμ§λ₯Ό λ컀 λ μ§μ€νΈλ¦¬μ μ λ‘λνκ±°λ, λ€λ₯Έ κ°λ°μμ 곡μ ν μ μλ€. λ°°ν¬ μμλ λ컀 μ΄λ―Έμ§λ₯Ό λ€μ΄λ‘λνκ³ μ»¨ν μ΄λλ₯Ό μ€ννμ¬ μ ν리μΌμ΄μ μ μ€νν μ μλ€.