[κ°μ] λ°λΌνλ©° λ°°μ°λ λ컀μ CIνκ²½ -2
π λ컀 μ΄λ―Έμ§ λ΄λΆ νμΌ κ΅¬μ‘°
docker run <μ΄λ―Έμ§μ΄λ¦> <λͺ λ Ήμ΄>
1. λ컀 ν΄λΌμ΄μΈνΈμ μ λ ₯νλ©΄ μ λ¬Έμ₯μ μ λ ₯νλ©΄ λ컀 μλ²λ‘ 보λ
2. λ컀 μλ²μμ 컨ν μ΄λλ₯Ό μν μ΄λ―Έμ§κ° μ΄λ―Έ μΊμ¬κ° λμ΄ μλμ§ νμΈ
3. μμΌλ©΄ λ컀 νλΈμμ λ€μ΄ λ°μμ΄ μλ€λ©΄ κ·Έ μ΄λ―Έ κ°μ§κ³ μλ μ΄λ―Έμ§λ‘ 컨ν μ΄λ μμ±
<λͺ λ Ήμ΄> μ λ ₯νλ©΄
4. μμ±ν λ <μ΄λ―Έμ§ μ΄λ¦> μμ λ€μ΄μλ νμΌ μ€λ μ·λ€μ΄ 컨ν μ΄λ μμ μλ νλ λμ€ν¬λ‘ λ€μ΄λ‘λλ¨
5. μ΄λ―Έμ§ μ΄λ¦ λ€μ λ€λ₯Έ λͺ λ Ήμ΄λ₯Ό λ λΆμ΄λ©΄,
μλ μ΄λ―Έμ§ μμ λ€μ΄μλ κΈ°λ³Έ 컀맨λλ 무μκ° λκ³ μ λ ₯ν λͺ λ Ήμ΄κ° μ€νλ¨
π 컨ν μ΄λλ€ λμ΄νκΈ°
νμ¬ μ€νμ€μΈ 컨ν μ΄λ λμ΄ docker ps(process status)
docker ps --format "table {{.Names}}\t{{.Image}}" - μνλ νλͺ©λ§ 보기
docker ps -a μ λΆ λ³΄κΈ°
π λ컀 컨ν μ΄λμ μ€νμ£ΌκΈ°
docker create hello-world -> id : μμ±
docker start <컨ν μ΄λ id/ μ΄λ¦> : μ€ν
docker start -a : λ컀 컨ν μ΄λμ outputλ€μ νλ©΄μ νμν΄μ€λ€.
idλ μΌλΆλ§ λ£μ΄λ μμλ£λλ€.
π Docker Stop vs Docker Kill
stopμ gracefully νκ² μ’ λ£. Grace Period κΈ°λ€λ¦Ό
killμ λ°λ‘ μ€μ§
π 컨ν μ΄λ μμ νκΈ°
docker rm <μμ΄λ/μ΄λ¦> μ€μ§λ 컨ν μ΄λ μμ
docker rm `docker ps -a -q` λͺ¨λ 컨ν μ΄λ μμ
docker rmI <μ΄λ―Έμ§ id> μ΄λ―Έμ§ μμ
docker system prune νλ²μ λͺ¨λ μ΄λ―Έμ§, λ€νΈμν¬, 컨ν μ΄λ λͺ¨λ μ§μ°κΈ°
π μ€ν μ€μΈ 컨ν μ΄λμ λͺ λ Ήμ΄ μ λ¬
docker exec <컨ν μ΄λ μμ΄λ>
docker run - μλ‘ μ»¨ν μ΄λλ₯Ό λ§λ€μ΄μ μ€ν
docker exec - μ΄λ―Έ μ€νμ€μΈ 컨ν μ΄λμ λͺ λ Ήμ΄ μ λ¬
π λ λμ€λ₯Ό μ΄μ©ν 컨ν μ΄λμ μ΄ν΄
docker run redis
docker run redis-cli
λ λμ€ ν΄λΌμ΄μΈνΈκ° λ λμ€ μλ²λ₯Ό μλνλ € νμ§λ§ 컨ν μ΄λ λ°μ΄κΈ°μ μ€λ₯κ° λ°μνλ€.
-> κ°μ 컨ν μ΄λμ λ£μ΄μ€μΌν¨
-itλ₯Ό λΆμ¬μ£Όμ΄ λͺ λ Ήμ΄λ₯Ό μ€νν ν κ³μ λͺ λ Ήμ΄λ₯Ό μ μ μ μκ² ν¨
π μ€ν μ€μΈ 컨ν μ΄λμμ ν°λ―Έλ μν μ¦κΈ°κΈ°
docker exec -it <컨ν μ΄λ id> <λͺ λ Ήμ΄>
λͺ λ Ήμ΄ λΆλΆμ sh μ λ ₯νλ©΄ (OSλ§λ€ λ€λ₯Ό μ μμ 보νΈμ μΈκ±΄ sh)
μ λΆ λ€ μ λ ₯ μνκ³ λͺ λ Ήμ΄λ§ μ λ ₯ν΄λ λ¨
π λ컀 μ΄λ―Έμ§ μμ±νλ μμ
π Dockerfile λ§λ€κΈ°
1. λ² μ΄μ€ μ΄λ―Έμ§λ₯Ό λͺ μν΄μ€λ€. (νμΌ μ€λ μ·μ ν΄λΉ)
2. μΆκ°μ μΌλ‘ νμν νμΌμ λ€μ΄ λ°κΈ° μν λͺ κ°μ§ λͺ λ Ήμ΄λ₯Ό λͺ μν΄μ€λ€. (νμΌ μ€λ μ·μ ν΄λΉ)
3. 컨ν μ΄λ μμ μ μ€νλ λͺ λ Ήμ΄λ₯Ό λͺ μν΄μ€λ€. (μμ μ μ€νλ λͺ λ Ήμ΄μ ν΄λΉ)
FROM alpine
#λ€μ΄λ°μ κ±° λ€μ΄λ°μ μμΌλ―λ‘ μ£Όμμ²λ¦¬
#RUN command
CMD ["echo", "hello"]
FROM
μ΄λ―Έμ§ μμ± μ κΈ°λ°μ΄ λλ μ΄λ―Έμ§ λ μ΄μ΄
<μ΄λ―Έμ§ μ΄λ¦>:<νκ·Έ> νμμΌλ‘ μμ±
νκ·Έλ₯Ό μ λΆμ΄λ©΄ μλμ μΌλ‘ κ°μ₯ μ΅μ κ²μΌλ‘ λ€μ΄ λ°μ
RUN
λ컀 μ΄λ―Έμ§κ° μμ±λκΈ° μ μ μνν μ λͺ
λ Ήμ΄
CMD
컨ν
μ΄λκ° μμλμμ λ
μ€νν μ€ν νμΌ λλ μ
Έ μ€ν¬λ¦½νΈ
ν΄λΉ λͺ
λ Ήμ΄λ DockerFile λ΄ 1νλ§ μΈ μ μμ
1. Alpineμ΄λ―Έμ§
2. μμ 컨ν μ΄λ μμ±
νλλμ€ν¬μ νμΌ μ€λ μ·
μμ컨ν μ΄λμ echo
=> μλ‘μ΄ Alpine μ΄λ―Έμ§ μμ±, μμ컨ν μ΄λ μ§μ
μ΄λ―Έμ§λ‘ 컨ν μ΄λλ₯Ό λ§λ€μ§λ§, 컨ν μ΄λλ‘ μλ‘μ΄ μ΄λ―Έμ§λ₯Ό λ§λ λ€
π λ΄κ° λ§λ μ΄λ―Έμ§ κΈ°μ΅νκΈ° μ¬μ΄ μ΄λ¦ μ£ΌκΈ°
idκ° κΈ°μ΅νκΈ° λ무 μ΄λ €μ
docker build -t λ컀μμ΄λ/νλ‘μ νΈμ΄λ¦:λ²μ ./