3. dockerfile-syntax
Dockerfile syntax ์ ๋ฆฌ
All about Dockerfile syntax
FROM
๋ฒ ์ด์ค ์ด๋ฏธ์ง ์ง์
RUN
์ปจํ ์ด๋ ๋ด์์ ์คํํ ์ ๋ช ๋ น์ด๋ฅผ ์ง์ ํ์ฌ ํจํค์ง ๋๋ ์ํํธ์จ์ด ์ค์
WORKDIR
๋ช ๋ น์ด ์คํ๋ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ ์ง์
ํด๋น ๋๋ ํ ๋ฆฌ๊ฐ ์๋ค๋ฉด ์์ฑ๋จ
COPY
ํธ์คํธ ๋จธ์ ์ ํ์ผ์ ์ปจํ ์ด๋ ๋ด๋ถ๋ก ๋ณต์ฌ
ADD
COPY์ ์ ์ฌ. ์ถ๊ฐ์ ์ธ ๊ธฐ๋ฅ ์ ๊ณต
๋ก์ปฌ ํ์ผ์ด๋ URL ๋ณต์ฌํ ์ ์์ผ๋ฉฐ, ์์ถ ํ์ผ ์๋์ผ๋ก ํด์ ํ๊ณ ์๊ฒฉ ํ์ผ ๋ค์ด๋ก๋ ๊ฐ๋ฅ
CMD
์ปจํ ์ด๋๊ฐ ์์๋ ๋ ์คํํ๋ ๋ช ๋ น์ ์ค์
๋์ปค ํ์ผ์์ ํ ๋ฒ๋ง ์ฌ์ฉํด์ผ ํจ
๋์์ ์ฌ๋ฌ ๊ฐ์ CMD ์ง์๋ฌธ์ ์ฌ์ฉํ ์ ์์ง๋ง, ๋ง์ง๋ง CMD๋ง ์ ์ฉ๋จ
ENTRYPOINT
์ปจํ ์ด๋๊ฐ ์์๋ ๋ ์คํ๋๋ ์คํ ํ์ผ ์ค์
CMD์ ์ ์ฌํ์ง๋ง ENTRYPOINT๋ ํญ์ ์คํ๋จ
CMD๋ ENTRYPOINT์ ์ธ์๋ก ์ฌ์ฉ๋จ
ENV
ํ๊ฒฝ ๋ณ์๋ฅผ ์ค์
ARG
๋น๋ ์ค์ ์ ๋ฌ๋๋ ์ธ์๋ฅผ ์ ์ํฉ๋๋ค.
EXPOSE
์ปจํ ์ด๋๊ฐ ๋ ธ์ถํ ํฌํธ ์ค์
VOLUME
ํธ์คํธ ๋จธ์ ๊ณผ ์ปจํ ์ด๋ ๊ฐ์ ๋ณผ๋ฅจ์ ๊ณต์ ํ ์ ์๋๋ก ์ค์
USER
์ปจํ ์ด๋๊ฐ ์คํ๋ ์ฌ์ฉ์๋ฅผ ์ค์
HEALTHCHECK
์ปจํ ์ด๋์ ์ํ๋ฅผ ํ์ธํ๋ ๋ฐฉ๋ฒ์ ์ค์
LABEL
์ด๋ฏธ์ง์ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐ
LABEL version="1.0"
SHELL
๊ธฐ๋ณธ ์ ์ง์
SHELL ["/bin/bash", "-c"]
STOPSIGNAL
์ปจํ ์ด๋๊ฐ ์ข ๋ฃ๋ ๋ ๋ณด๋ด์ง ์๊ทธ๋์ ์ง์
STOPSIGNAL SIGTERM
sample
Node.js Dockerfile sample
Python&Django Dockerfile sample
Multistaging nodejs sample
Build Docker image multistaging
docker compose
Last updated