๋ฏธ๋ฒ์์ ๋ถํ์ ์๊ธ ์ธํ์ ๋์ด ํ์๋ก ๊ตญ๊ฐ ์๋ณด๋ฒ์ ์ ์ฉํด ์ด๋๋ฆฌ์ ๊ฐ๋ฐ์ ๋ฒ์ง ๊ทธ๋ฆฌํผ์ค์๊ฒ ์ง์ญ 5๋ 3๊ฐ์๊ณผ ๋ฒ๊ธ 10๋ง๋ฌ๋ฌ๋ฅผ ์ ๊ณ ํ์ต๋๋ค.
๋ฏธ๋ฒ์์์๋ ๋ฒ์ง ๊ทธ๋ฆฌํผ์ค๊ฐ ๋๋ถ ์ ์ฌ๋ฅผ ํํผํ ์ ์๋ ์ํธํํ ๊ธฐ๋ฐ ์์ค์ ๊ฐ๋ฐํ๊ณ ์๊ธ ์กฐ๋ฌ ๊ณํ์ ์ธ์ ๊ตญ๊ฐ ์๋ณด์ ํฐ ์ํ์ ๋ผ์ณค๋ค๊ณ ํ๋จํด ์ด๋ฌํ ํ๊ฒฐ์ ๋ด๋ ธ๋ค๊ณ ํด์! ์ค์ ๋ก Lazarus๋ผ๋ ํด์ปค ๊ทธ๋ฃน์ด 2021๋ ์ ์ํธํํ ํ๋ซํผ์ ํตํด 4์ต ๋ฌ๋ฌ ์ด์์ ์๋ณธ์ ๋นผ๋๋ฆฐ ์ ์ด ์๋ค๊ณ ํ๋๋ฐ์. ์ด๋ ๊ฒ ๋นผ๋๋ฆฐ ๋์ ๋ถํ์ ์ฒด์ ์ ์ง๋ฅผ ์ํ ํต๋ฌด๊ธฐ ๊ฐ๋ฐ์ ์ฌ์ฉ๋ ์๋ ์๋ค๊ณ ํ๋ค์! ๐ฑ
์ฌ๊ฑด์ ๋ํด ๋ ์์ธํ ๋ด์ฉ์ด ๊ถ๊ธํ์ ๋ถ๋ค์ ์๋ 10์ 1์ฃผ์ฐจ ๋ด์ค๋ ํฐ์ ๋ณด๋ด๋๋ฆฐ ๋ฒ์ง ๊ทธ๋ฆฌํผ์ค์ ํ์ ์ธ์ ์ ๋ํ ๊ธฐ์ฌ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์. ๐
docker์ ๊ฐ์ container runtime์ธ containerd์ CRI(Container Runtime Interface) ํ๋ฌ๊ทธ์ธ์์ ์ปจํ ์ด๋๊ฐ ์์์ ํธ์คํธ ํ์ผ ๋ฐ ๋๋ ํฐ๋ฆฌ์ ์ก์ธ์คํ ์ ์๋ ์ทจ์ฝ์ ์ ์ธ๋ถ ์ ๋ณด๊ฐ ๊ณต๊ฐ๋์์ต๋๋ค.
์ปจํ ์ด๋์ ํ์ค ์ด๋ฏธ์ง ํฌ๋งท์ธ OCI(Open Contianer Image)์๋ JSON ๊ตฌ์ฑํ์ผ์ด ํฌํจ๋์ด ์์ต๋๋ค. ์ด์ค ์ด๋ฏธ์ง๋ฅผ ์ปจํ ์ด๋ํ ํ ๋ containerd ํ๋ก์ธ์ค๊ฐ ์ปจํ ์ด๋ ์ธ์คํด์ค์ ํน์ ๋ฐ์ดํฐ๋ฅผ ์ธ ์ ์๋๋ก ๋ณผ๋ฅจ์ ์ง์ ํ๋ ๊ฒฝ๋ก๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
ContainerPath ์์ฑ์ ํด์ปค๊ฐ ์ ์ดํ๋ ์ด๋ฏธ์ง์ JSON ๊ตฌ์ฑ์์ ๊ฐ์ ธ์ค๋ฉฐ ์ปจํ ์ด๋ rootfs์ ContainerPath ์๋์ ๋ชจ๋ ํ์ผ์ HostPath์ ์์ ๋๋ ํฐ๋ฆฌ๋ก ๋ณต์ฌํด ์์์ ๋ฐ์ดํฐ๋ฅผ ์ธ ์ ์๋๋ก ํ๊ณ , ์ดํ ๊ฐ์ ์์น์ ์ปจํ ์ด๋์ ๋ง์ดํธ๋ฉ๋๋ค.
๊ทธ๋ฌ๋ ์ด ContainerPath ์์ฑ์ ๊ฒฝ๋ก ๊ฒ์ฌ๊ฐ ์ถฉ๋ถํ์ง ์์ ์ปจํ ์ด๋ ๊ฒฝ๋ก๊ฐ ์๋ ํธ์คํธ์ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ ์ ์๊ณ , ํธ์คํธ์ ์์ ํ์ผ์ ์ปจํ ์ด๋์ ๋ง์ดํธํด ์ ๊ทผ ๋ฐ ์์ ํ ์ ์๋ path traversal ์ทจ์ฝ์ ์ด ๋ฐ์ํฉ๋๋ค.