ElasticSearch๋ฅผ ์ฌ์ฉํ๋ ๋ค์ํ ๋ฐฉ๋ฒ ์ค
Docker๋ฅผ ํตํด ์ค์นํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์์๋ค.
Docker๊ฐ ๋ฌด์์ด๊ณ ์ด๋ป๊ฒ ์ด๋ค์ง๋์ง
์์๋ณด๊ฒ ๋ค.
1. Docker
- ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๊ฒ ๊ตฌ์ถ, ํ ์คํธ ๋ฐ ๋ฐฐํฌํ ์ ์๋ ์ํํธ์จ์ด ํ๋ซํผ์ด๋ค.
- ์ํํธ์จ์ด๋ฅผ ์ปจํ ์ด๋๋ผ๋ ํ์คํ๋ ์ ๋์ผ๋ก ํจํค์งํ๋ค.
- ์ด ์ปจํ
์ด๋์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์์คํ
๋๊ตฌ, ์ฝ๋, ๋ฐํ์ ๋ฑ ์ํํธ์จ์ด๋ฅผ ์คํํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ๊ฒ์ด ํฌํจ๋์ด์๋ค.
→ ์ค๋ช → ํ๋ก๊ทธ๋จ์ ์คํํ๋ ค๋ฉด ์ฝ๋, ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ๋ฐํ์, ๋๊ตฌ ๋ฑ ํ์ํ ๊ฒ์ด ์๋ค. ์๋ ๊ฐ๋ฐ์๊ฐ ์ด๋ค ํ๋ก๊ทธ๋จ์ ์คํํ๊ธฐ ์ํด ์ค๋นํด์ผํ ๊ฒ๋ค์ด์ง๋ง, Docker๋ ์ปจํ ์ด๋์ ์ด ํ์ํ ๊ฒ๋ค์ ๋ชจ๋ ํฌํจํ๊ธฐ ๋๋ฌธ์ ์ด๋ฐ ์๊ณ ๋ฅผ ์ค์ฌ์ค๋ค. ๊ทธ๋์ ์ด๋ค ์ค๋น ์์ด ์คํ๋ง ํ๋ฉด ๋๋ค. - ํ๊ฒฝ์ ๊ตฌ์ ๋ฐ์ง ์๊ณ ์ ํ๋ฆฌ์ผ์ด์
์ ์ ์ํ๊ฒ ๋ฐฐํฌ ๋ฐ ํ์ฅํ ์ ์์ผ๋ฉฐ ์ฝ๋๊ฐ ๋ฌธ์ ์์ด ์คํ๋ ์ ์๋ค.
→ ์ค๋ช → ๊ฐ๋ฐ์๊ฐ Windows์์ ํ๋ก๊ทธ๋จ์ ๋ง๋ ๊ฒฝ์ฐ, ์ค์ ์๋น์คํ๋ ค๋ Linux์ ์ฌ๋ฆฌ๋ฉด ์๋์๊ฐ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ๊ทธ๋ฐ๋ฐ Docker๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ๋์๊ฐ๋ ํ๊ฒฝ ์์ฒด๋ฅผ ์ปจํ ์ด๋์ ํต์งธ๋ก ๋ฃ๊ธฐ์ ๋งฅ, ๋ฆฌ๋ ์ค ์ด๋์ ๋์๋ ์คํ์ด ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ฒ๋ฅผ ๊ฐ์๊ธฐ ๋๋ ค์ผํ ๊ฒฝ์ฐ, ์๋๋ผ๋ฉด ๋๋ฆฌ๋ ค๋ ์๋ฒ ์๋งํผ ์ผ์ผ์ด ํ๋ก๊ทธ๋จ์ ๊น๊ณ ์ค์ ํด์ผํ์ง๋ง Docker๋ ๋ช ๋ น์ด ํ ์ค์ด๋ฉด ๋๊ฐ์ ํ๊ฒฝ์ ์ปจํ ์ด๋๋ฅผ ์ฐ์ด๋ผ ์ ์๋ค.
Docker๋ ๋ฌด์์ ๋๊น? | AWS
Docker๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๊ฒ ๊ตฌ์ถ, ํ ์คํธ ๋ฐ ๋ฐฐํฌํ ์ ์๋ ์ํํธ์จ์ด ํ๋ซํผ์ ๋๋ค. Docker๋ ์ํํธ์จ์ด๋ฅผ ์ปจํ ์ด๋๋ผ๋ ํ์คํ๋ ์ ๋์ผ๋ก ํจํค์งํ๋ฉฐ, ์ด ์ปจํ ์ด๋์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ,
aws.amazon.com
2. Docker ์ปจํ ์ด๋์ VM(๊ฐ์๋จธ์ )์ ์ฐจ์ด์
- Docker์ VM์ ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ ์ด์์ฒด์ (OS)๋ฅผ ํต์งธ๋ก ์๋ก ๋ง๋๋์ง, ์๋๋ฉด ๊ธฐ์กด OS๋ฅผ ๋๋ ์ฐ๋์ง์ ๋ฐ๋ผ ๋ค๋ฅด๋ค.
- VM์ ํ๋์จ์ด ์ ์ฒด๋ฅผ ๊ฐ์ํํ๋ค. ํ์ดํผ๋ฐ์ด์ ๋ผ๋ ๋๊ตฌ ์์ GuestOS๋ฅผ ์ค์นํ๊ณ ์๋์ฐ PC ์์ ๋ฆฌ๋
์ค VM์ ๋ง๋ ๋ค. ์ด๋ ๋ฆฌ๋
์ค๋ฅผ ์คํํ๊ธฐ ์ํด ์GB์ OS ํ์ผ์ด ํต์งธ๋ก ํ์ํ๋ค.
→ VM์ ์ฌ์ฉํ๊ธฐ ์ํด ์ด์์ฒด์ ๋ฅผ ํต์งธ๋ก ์๋กญ๊ฒ ๋ง๋ค์ด์ผํ๋ค. - Docker๋ OS์ ์ปค๋์ ๊ณต์ ํ๊ณ ํ๋ก์ธ์ค๋ง ๊ฒฉ๋ฆฌํ๋ค. ์ปดํจํฐ์ OS๋ฅผ ๊ทธ๋๋ก ๋น๋ ค ์ฐ๋ฉด์, ์ ํ๋ฆฌ์ผ์ด์
์คํ์ ํ์ํ ์ต์ํ์ ํ์ผ์ ๋ด๋๋ค.
→ ๋ณ๋์ OS ์ค์น๊ฐ ํ์ํ์ง ์๋ค. - VM์ OS๊ฐ ํฌํจ๋๊ธฐ ๋๋ฌธ์ ์ด๋ฏธ์ง ํ๋๋ฅผ ๋ง๋ ๋ค๋ฉด GB ๋จ์๋ก ์ปค์ง๊ฒ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ๋์จ์ด๋ฅผ ํ๋ด๋ด๋ ์ค๊ฐ ๋จ๊ณ, ํ์ดํผ๋ฐ์ด์ ๊ฐ ์์ด์ ์ฑ๋ฅ ์์ค๋ ๋ฐ์ํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ 2-3๊ฐ๋ง ๋์๋ ์ปดํจํฐ ์ฌ์ฉ์ด ์ด๋ ค์์ง๋ค.
- Docker๋ ์ฝ๋์ ๊ผญ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ง ๋ด๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ๊ฐ๋ณ๋ค. ๊ทธ๋ฆฌ๊ณ ํธ์คํธ OS ์์์ ์ง์ ์คํ๋๊ธฐ ๋๋ฌธ์ ๊ฑฐ์ ์ผ๋ฐ ํ๋ก๊ทธ๋จ๊ณผ ๋ค๋ฆ์๋ ์๋๋ก ๋์ํ๋ค. ๋ ๋์ปค ์ปจํ ์ด๋๋ฅผ ์ฌ๋ฌ๊ฐ ๋์๋ ์พ์ ํ๊ฒ ๋์๊ฐ๋ค.
- VM์ด ๋ณ๋ก์ธ ๊ฒ์ ์๋๋ค. ์ฐ๋ ์ฉ๋๊ฐ ์์ ํ ๋ค๋ฅธ ๊ฒ ๋ฟ์ด๋ค. VM์ ์์ ํ ๋ค๋ฅธ ์ด์์ฒด์ ๊ฐ ํ์ํ ๊ฒฝ์ฐ, ์๋ก ๋งฅ์์ ์๋์ฐ ์ ์ฉ ํ๋ก๊ทธ๋จ์ ์คํํ๋ ๊ฒฝ์ฐ์ ์ด๋ค. Docker๋ ์ฑ์ ๋น ๋ฅด๊ฒ ๋ฐฐํฌํ๊ณ ์ถ๊ฑฐ๋ ์ฌ๋ฌ ๊ฐ์ ์๋น์ค๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ณ ์ถ๊ฑฐ๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ํ์๋ค๊ณผ ๋๊ฐ์ด ๋ง์ถ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.
- ๋ง์ง๋ง์ผ๋ก ์ฝ๊ฒ ์ค๋ช ํ๋ฉด, VM์ ์๋ก์ด ๊ฑด๋ฌผ์ ์ง๋ ๊ฑด์ค์ ๋๋์ด๋ฉด Docker๋ ๋ฐฉ์ ์๋กญ๊ฒ ๊พธ๋ฏธ๋ ์ธํ ๋ฆฌ์ด ๋์์ด๋ ๋๋์ด๋ค.
Docker (์ ์/์ฅ์ /๊ตฌ์ฑ์์)
์ ์, ์ฌ์ฉ ์ด์ (๊ฐ์๋จธ์ ๊ณผ์ ๋น๊ต), ๊ตฌ์ฑ์์ ์์ผ๋ก ์ ๋ฆฌํ์ต๋๋ค.
velog.io
3. Docker ๊ตฌ์ฑ์์

- Docker๋ ํด๋ผ์ด์ธํธ - ์๋ฒ ์ํคํ ์ฒ๋ฅผ ์ฌ์ฉํ๋ค. ์ฌ๊ธฐ์ ํด๋ผ์ด์ธํธ - ์๋ฒ ์ํคํ ์ฒ๋, ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํ๋ ์ฑ์ ํด๋ผ์ด์ธํธ ๊ทธ๋ฆฌ๊ณ ๋ฆฌ์์ค๊ฐ ์กด์ฌํ๋ ๊ณณ์ ์๋ฒ๋ผ๊ณ ๋งํ๋ค. ํด๋ผ์ด์ธํธ(์๋)๊ฐ ๋ฌผํ์ ์์ฒญํ๋ฉด ์๋ฒ(์ ์)๋ ์์ฒญ์ ๋ง๋ ๋ฆฌ์์ค๋ฅผ ๋ด์ ์๋ตํ๋ค.
- Docker ํด๋ผ์ด์ธํธ๋ Docker ๋ฐ๋ชฌ๊ณผ ํต์ ํ๋ฉฐ, ๋ฐ๋ชฌ์ Docker ์ปจํ ์ด๋๋ฅผ ๋น๋, ์คํ ๋ฐ ๋ฐฐํฌํ๋ ํต์ฌ ์์ ์ ์ํํ๋ค.
- Docker ๋ฐ๋ชฌ์ Docker API ์์ฒญ์ ์์ ํ๊ณ ์ด๋ฏธ์ง, ์ปจํ ์ด๋, ๋คํธ์ํฌ ๋ฐ ๋ณผ๋ฅจ๊ณผ ๊ฐ์ Docker ๊ฐ์ฒด๋ฅผ ๊ด๋ฆฌํ๋ค. ๋ฐ๋ชฌ์ ๋ค๋ฅธ ๋ฐ๋ชฌ๊ณผ ํต์ ํ๋ฉฐ Docker ์๋น์ค๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค.
- Docker ํด๋ผ์ด์ธํธ๋ ๋ง์ Docker ์ฌ์ฉ์๊ฐ Docker์ ์ํธ ์์ฉํ๋ ์ฃผ์ ๋ฐฉ๋ฒ์ด๋ค. ์ฌ์ฉ์๊ฐ docker run์ ์ ๋ ฅํ๋ฉด ํด๋ผ์ด์ธํธ๋ ์ด ๋ช ๋ น์ API ํ์์ผ๋ก ๋ฐ๊พธ๊ณ ๋ฐ๋ ์์ฒญ์ ๋ฐ๋ชฌ(dockerd)์๊ฒ ๋ณด๋ธ๋ค. Docker ํด๋ผ์ด์ธํธ๋ ํ๋ ์ด์์ ๋ฐ๋ชฌ๊ณผ ํต์ ํ ์ ์๋ค. ๋ง์ฝ ์ ์ฌ์ ์ปดํจํฐ์์ ๊ณ ์ฑ๋ฅ ์๋ฒ์์ ๋๋ ค์ผํ ๊ฒฝ์ฐ, ํด๋ผ์ด์ธํธ ์ค์ ๋ง ๋ฐ๊พธ๋ฉด ์ธํฐ๋ท ๋๋จธ์ ์๋ ๋ค๋ฅธ ์ปดํจํฐ์ ๋ฐ๋ชฌ์๊ฒ ๋ช ๋ น๋ง ๋ด๋ฆฌ๊ณ ์ผ์ ๋ฉ๋ฆฌ ์๋ ์๋ฒ์์ ํ๋๋ก ๋ง๋ค ์ ์๋ค.
- Docker ๋ ์ง์คํธ๋ฆฌ๋ Docker ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ๋ค. ์ฌ๊ธฐ์ ์ด๋ฏธ์ง๋ .jpb, .png ๊ฐ์ ์ฌ์ง ํ์ผ์ด ์๋, ์ด๋ค ์์คํ ์ ํ์ฌ ์ํ๋ฅผ ๊ทธ๋๋ก ๋ณต์ฌํด์ ์ ์ฅํด๋ ๊ฒ์ ๋งํ๋ค.Docker Hub๋ ๋๊ตฌ๋ ์ฌ์ฉํ ์ ์๋ ๊ณต๊ฐ ๋ ์ง์คํธ๋ฆฌ์ด๋ฉฐ, Docker๋ ๊ธฐ๋ณธ์ ์ผ๋ก Docker Hub์์ ์ด๋ฏธ์ง๋ฅผ ์ฐพ๋๋ค.
- Docker ๊ฐ์ฒด๋ก๋ ์๊น ๋งํ ์ด๋ฏธ์ง๊ฐ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ปจํ ์ด๋๊ฐ ์๋๋ฐ, ์ปจํ ์ด๋๋ ์ด๋ฏธ์ง์ ์คํ ๊ฐ๋ฅํ ์ธ์คํด์ค์ด๋ค. Docker API ๋๋ CLI๋ฅผ ์ฌ์ฉํ์ฌ ์ปจํ ์ด๋๋ฅผ ์์ฑ, ์์, ์ค์ง, ์ด๋ ๋๋ ์ญ์ ํ ์ ์๋ค. ์๋ ๋งํฌ์ ๋ค์ด๊ฐ๋ฉด ๋ ์์ธํ ์ค๋ช ์ ๋ณผ ์ ์๋ค.
What is Docker?
Get an in-depth overview of the Docker platform including what it can be used for, the architecture it employs, and its underlying technology.
docs.docker.com
4. Docker์ ๋ช ๋ น์ด

- run, build, pulld์ ๋์ปค์ ๋ ์ง์คํธ๋ฆฌ, ์ด๋ฏธ์ง, ์ปจํ ์ด๋๋ฅผ ์ฐ๊ฒฐํ๋ ์ก์ ๋ค์ด๋ค.
- docker pull : Docker Hub์ ์ด๋ฏธ ๋๊ตฐ๊ฐ๊ฐ ๋ง๋ค์ด ๋์ ์ด๋ฏธ์ง๋ฅผ ์ปดํจํฐ๋ก ๋ค์ด๋ก๋ํ๋ ๋ช ๋ น์ด์ด๋ค.
- docker build : ์์ค ์ฝ๋์ ์ค์ ํ์ผ๋ค์ ๋ฌถ์ด์ ํ๋์ ๋์ปค ์ด๋ฏธ์ง๋ก ์ ์ํ๋ ๋ช ๋ น์ด์ด๋ค.
- docker run : ์ปดํจํฐ์ ์๋ ์ด๋ฏธ์ง๋ฅผ ๋ฐํ์ผ๋ก ์ค์ ํ๋ ์ปจํ ์ด๋๋ฅผ ๋ง๋๋ ๋ช ๋ น์ด์ด๋ค.