[Docker] ํจ์จ์ ์ธ Dockerfile ์์ฑํ๊ธฐ, ์์ฑ ์ ์ฃผ์์ฌํญ
2022. 11. 18. 01:37ใBackend/Docker
728x90
๋ฐ์ํ
Good ๐
- ํ๋์ ๋ช
๋ น์ด๋ฅผ
\
๋ก ๋๋ ์ ๊ฐ๋ ์ฑ์ ๋์ธ๋ค. .dockerignore
ํ์ผ์ ์์ฑํด ๋ถํ์ํ ํ์ผ์ ๋น๋ ์ปจํ ์คํธ์ ํฌํจํ์ง ์๋๋ค.- ๋น๋ ์บ์๋ฅผ ์ด์ฉํด ๊ธฐ์กด์ ์ฌ์ฉํ๋ ์ด๋ฏธ์ง ๋ ์ด์ด๋ฅผ ์ฌ์ฌ์ฉํ๋ค.
&&
๋ก ๊ฐ RUN ๋ช ๋ น์ ํ๋๋ก ๋ฌถ์ด ํ๋์ RUN์ผ๋ก ์ฌ๋ฌ ๊ฐ์ ๋ช ๋ น์ด๋ฅผ ์คํํ๋๋ก ์์ฑํ๋ค.
์ฌ๋ฌ ๊ฐ์ RUN ๋ช ๋ น์ด๊ฐ ํ๋๋ก ๋ฌถ์ด๋ฉด ์ด๋ฏธ์ง ๋ ์ด์ด์ ๊ฐ์ ๋ํ ํ๋๋ก ์ค์ด๋ ๋ค.- ๋ค๋ฅธ ์ฌ๋์ด ๋น๋ํ ์ด๋ฏธ์ง์ ๋ถํ์ํ ์ด๋ฏธ์ง ๋ ์ด์ด๊ฐ ๋ค์ด์๋ค๋ฉด ํด๋น ์ด๋ฏธ์ง๋ก ์ปจํ
์ด๋๋ฅผ ์์ฑํ๊ณ
docker export, import
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํด ์ปจํ ์ด๋๋ฅผ ์ด๋ฏธ์ง๋ก ๋ง๋ฆ์ผ๋ก์จ ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ฅผ ์ค์ธ๋ค.
Bad โ
- Dockerfile์ ์๋ฌด๋ ๊ฒ๋ ์์ฑํ๋ฉด ์ ์ฅ ๊ณต๊ฐ์ ๋ถํ์ํ๊ฒ ์ฐจ์งํ๋ ์ด๋ฏธ์ง๋ ๋ ์ด์ด๊ฐ ๋๋ฌด ๋ง์ ์ด๋ฏธ์ง๊ฐ ์์ฑ๋ ์ ์๋ค.
๋นํจ์จ์ ์ธ ๋น๋ ์์
FROM ubuntu:14.04
RUN mkdir /test
RUN fallocate -1 100m /test/dummy # 100MB ํฌ๊ธฐ์ ํ์ผ์ ๊ฐ์์ผ๋ก ๋ง๋ค์ด ์ปจํ
์ด๋์ ํ ๋นํ๊ณ , ์ด๋ฅผ ์ด๋ฏธ์ง ๋ ์ด์ด๋ก ๋น๋ํ๋ค.
RUN rm /test/dummy # ํ์ผ์ ์ญ์ ํ๋ค.
# ๋น๋๊ฐ ์๋ฃ๋์ด ์ต์ข
์์ฑ๋ ์ด๋ฏธ์ง์๋ 100MB ํฌ๊ธฐ์ `/dummy` ํ์ผ์ด ์กด์ฌํ์ง ์๋๋ค.
- ์ Dockerfile๋ก ๋น๋ํ ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋
ubuntu:14.04
์ด๋ฏธ์ง์ 100MB๋ฅผ ๋ํ ์ฝ 290MB๋ฅผ ์ฐจ์งํ๋ค. RUN rm /test/dummy
์ผ๋ก ํ์ผ์ ์ญ์ ํ์ผ๋ฏ๋ก/test/dummy
๋ ์กด์ฌํ์ง ์๋๋ค.- ์ปจํ ์ด๋๋ฅผ ์ด๋ฏธ์ง๋ก ์์ฑํ ๋ ์ปจํ ์ด๋์์ ๋ณ๊ฒฝ๋ ์ฌํญ๋ง ์๋ก์ด ์ด๋ฏธ์ง ๋ ์ด์ด๋ก ์์ฑํ๋ ๋ฐฉ์์ ๋จ์ ์ค ํ๋์ด๋ค.
- ํ์ผ์ ์ญ์ ํ๋๋ผ๋ ์ด๋ ํ์ผ์ ์ญ์ ํ๋ค๋ ๋ณ๊ฒฝ์ฌํญ์ผ๋ก์ ๋ ์ด์ด๋ก ์๋กญ๊ฒ ์ ์ฅ๋ ๋ฟ, ์ค์ 100MB ํฌ๊ธฐ์ ํ์ผ์ ์ด์ ๋ ์ด์ด์ ๋จ์์๋ค.
- ์ค์ ๋ก ์ปจํ ์ด๋์์ ์ฌ์ฉํ์ง ๋ชปํ๋ ํ์ผ์ด ์ด๋ฏธ์ง ๋ ์ด์ด๋ก ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ์๋ฏธ ์๋ ์ ์ฅ ๊ณต๊ฐ์ ์ฐจ์งํ๊ฒ ๋ ๊ฒ์ด๋ค.
๊ฐ์ ์
FROM ubuntu:14.04
RUN mkdir /test && \
RUN fallocate -1 100m /test/dummy&& \
RUN rm /test/dummy
&&
๋ก ๊ฐ RUN ๋ช ๋ น์ ํ๋๋ก ๋ฌถ๋๋ค.- ์ฌ๋ฌ ๊ฐ์ RUN ๋ช ๋ น์ด๊ฐ ํ๋๋ก ๋ฌถ์ฌ ์ด๋ฏธ์ง ๋ ์ด์ด์ ๊ฐ์ ๋ํ ํ๋๋ก ์ค์ด๋ ๋ค.
728x90
๋ฐ์ํ
'Backend > Docker' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Docker] Dockerfile ๋ช ๋ น์ด & build ์ต์ (0) | 2022.11.18 |
---|---|
[Docker] ๋ฉํฐ ์คํ ์ด์ง ๋น๋๋ก ์ด๋ฏธ์ง ํฌ๊ธฐ ์ค์ด๊ธฐ (0) | 2022.11.18 |
[Docker] Dockerfile๋ก ์ด๋ฏธ์ง ์์ฑํ๊ธฐ (1) | 2022.11.15 |