07J. COPY
Less than 1 minute
07J. COPY ๊ด๋ จ
๋ชฉ์ฐจ
์ธ์ ๋ ์ต์ Docker
COPY
๋ ํ์ผ์ ์ด๋ฏธ์ง์ ์ถ๊ฐํฉ๋๋ค. ADD
์๋ ๋ฌ๋ฆฌ COPY
๋ ์์ถ ํ์ผ์ ์ถ๊ฐํ ๋ ์์ถ์ ํด์ ํ์ง ์๊ณ , ํ์ผ URL๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
.
Dockerfile
<span class="code-line"><span class="token instruction"><span class="token keyword">COPY</span> hello-entrypoint.sh /entrypoint.sh</span>
</span><span class="code-line"><span class="token instruction"><span class="token keyword">COPY</span> hello-dir /hello-dir</span>
</span><span class="code-line"><span class="token instruction"><span class="token keyword">COPY</span> zlib-1.2.8.tar.gz /zlib-1.2.8.tar.gz</span>
</span><span class="code-line"><span class="token instruction"><span class="token keyword">COPY</span> *.txt /root/</span>
COPY <๋ณต์ฌํ ํ์ผ ๊ฒฝ๋ก> <์ด๋ฏธ์ง์์ ํ์ผ์ด ์์นํ ๊ฒฝ๋ก>
ํ์์
๋๋ค.
<๋ณต์ฌํ ํ์ผ ๊ฒฝ๋ก>
๋ ์ปจํ ์คํธ ์๋๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋ฉฐ ์ปจํ ์คํธ ๋ฐ๊นฅ์ ํ์ผ, ๋๋ ํฐ๋ฆฌ๋, ์ ๋ ๊ฒฝ๋ก๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.- ์)
COPY ../hello.txt /home/hello
(X) - ์)
COPY /home/hello/hello.txt /home/hello
(X)
- ์)
<๋ณต์ฌํ ํ์ผ ๊ฒฝ๋ก>
๋ ํ์ผ๋ฟ๋ง ์๋๋ผ ๋๋ ํฐ๋ฆฌ๋ ์ค์ ํ ์ ์์ผ๋ฉฐ, ๋๋ ํฐ๋ฆฌ๋ฅผ ์ง์ ํ๋ฉด ๋๋ ํฐ๋ฆฌ์ ๋ชจ๋ ํ์ผ์ ๋ณต์ฌํฉ๋๋ค. ๋ํ, ์์ผ๋์นด๋๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ํ์ผ๋ง ๋ณต์ฌํ ์ ์์ต๋๋ค.- ์)
COPY *.txt /root/
- ์)
<๋ณต์ฌํ ํ์ผ ๊ฒฝ๋ก>
์ ์ธํฐ๋ท์ ์๋ ํ์ผ์ URL์ ์ฌ์ฉํ ์ ์์ต๋๋ค.- ์์ถ ํ์ผ์ ์์ถ์ ํด์ ํ์ง ์๊ณ ๊ทธ๋๋ก ๋ณต์ฌ๋ฉ๋๋ค.
<์ด๋ฏธ์ง์์ ํ์ผ์ด ์์นํ ๊ฒฝ๋ก>
๋ ํญ์ ์ ๋ ๊ฒฝ๋ก๋ก ์ค์ ํด์ผ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ด /๋ก ๋๋๋ฉด ๋๋ ํฐ๋ฆฌ๊ฐ ์์ฑ๋๊ณ ํ์ผ์ ๊ทธ ์๋์ ๋ณต์ฌ๋ฉ๋๋ค.COPY ./ /hello
์ ๊ฐ์ด ํ์ฌ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ถ๊ฐํ ๋.dockerignore
ํ์ผ์ ์ค์ ํ ํ์ผ๊ณผ ๋๋ ํฐ๋ฆฌ๋ ์ ์ธ๋ฉ๋๋ค.
COPY
๋ก ์ถ๊ฐ๋๋ ํ์ผ์ ์์ ์(UID) 0, ๊ทธ๋ฃน(GID) 0์ผ๋ก ์ค์ ๋๊ณ ๊ถํ์ ๊ธฐ์กด ํ์ผ์ ๊ถํ์ ๋ฐ๋ฆ
๋๋ค.