ํธ์คํธ OS(๋ก์ปฌPC)์ Docker๋ฅผ ์ฌ๋ ค์ ์ด๋ฏธ์ง๋ฅผ pull ๋ฐ์์ ์์ฃผ ์์ฝ๊ฒ ์ปจํ ์ด๋๋ฅผ ๋์์ ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋ค.
Docker image pull ๐ค
์๋ ๋ช ๋ น์ด๋ฅผ ํตํด apache webserver๋ฅผ ๋์ธ ์ ์๋ค.(์ฌ์ค ์ด ๋ง์ ๋ ์๋ตํ ์ ์๋ค.)
docker pull httpd #apache webserver image๋ฅผ pull
docker images #๋ค์ด๋ฐ์ ์ด๋ฏธ์ง ๋ชฉ๋ก ์ถ๋ ฅ
docker run httpd #apache webserver ์คํ
์ด ์ํ์์ ์น์๋ฒ๋ฅผ ํธ์ถํ๊ธฐ ์ํด localhost:80๋ฅผ ๋ธ๋ผ์ฐ์ ์ ์ ๋ ฅํ๋ฉด index.html์ด ํ์๊ฐ ์๋๋ค.
๋ด ์ปดํจํฐ์ apache๊ฐ ๋์๊ฐ๊ณ ์๊ณ ํฌํธ๊ฐ 80์ผ๋ก ๋์ด ์๋ค๋ฉด ํ์๊ฐ ๋ ๊ฑฐ๋ค.
ํ์ง๋ง ํ์ฌ apache๋ฅผ ๋์ด ๊ณณ์ ๋ด ์ปดํจํฐ์์ Docker๋ผ๋ ๋ณ๋์ ์์ญ์์ ์คํ์ค์ด๋ค.
๊ทธ๋์ ์ธ๋ถ์์ localhost:80์ผ๋ก ํธ์ถํ๋ฉด Docker์์ WebServer๊ฐ ํธ์ถ๋๋๋ก ์ถ๊ฐ ์ค์ ์ด ํ์ํ๋ค.
์ธ๋ถ์์ ํธ์ถํ๋ ์๋น์ค์ ํฌํธ๋ฅผ ์ด์ฉํด์ ๋ถ๋ฐฐ๋ฅผ ์ํฌ๊ฑด๋ฐ ์ด๋ฅผ ํฌํธ ํฌ์๋ฉ์ด๋ผ๊ณ ๋ ํ๋ค.
์ํค๋ฐฑ๊ณผ๋ฅผ ๋งํฌ ์์ผฐ๋๋ฐ ์ญ์ ๋ฐฑ๊ณผ๋ฅผ ๋ณด๋ฉด ์ฝ๊ฒ ์ดํด๊ฐ ์๋๋ค. ๐
ํฌํธํฌ์๋ฉ์ด๋? ๐
์๊ณ ์๋ ์ง์์ ์ต๋ํ ๋์ํด์ ์ฝ๊ฒ ์ค๋ช ํ๋ฉด ๋ด๊ฐ ์ฐํธ ๋ฐฐ๋ฌ๋ถ๋ผ๊ณ ๊ฐ์ ํด๋ณด์.
๋๋ ๋ฐฉํ๋ฒฝ์ด๋ผ๋ ์ฑ ์์ ๊ฑฐ์ฃผํ๋ ์ฌ๋๋ค์๊ฒ ์ฐํธ์ ๋ฐฐ๋ฌํด์ผ ํ๋ค.
ํ์ง๋ง ๋๋ ์ฑ ์์ ๊ฑฐ์ฃผ๋ฏผ๋ค ์ง์ฃผ์๋ ์์ง ๋ชปํ๋ค.
์ด๋ฅผ ์ด์ฉ๋ค..
๋คํํ๋ ๋๋ ์ ์ฒด ์ง์ฃผ์๋ ์์ง ๋ชปํ์ง๋ง ์ง์ ๋ถ์ด ์๋ ์ฐฝ๋ฌธ๋ฒํธ๋ ์๊ณ ์๋ค.
์ด ์ฐฝ๋ฌธ๋ฒํธ๋ฅผ ํตํด์ ๊ฑฐ์ฃผ๋ฏผ๋ค์๊ฒ ์ฐํธ์ ์ ๋ฌํ ์ ์๋ค.
๋ผ์ฐํฐ(๊ณต์ ๊ธฐ)๋ผ๋ ๊ณณ์ ๊ฐ์ ์ฐฝ๋ฌธ๋ฒํธ๋ฅผ ๋ถ๋ฌ์ฃผ๋ฉด ์ฐฝ๋ฌธ๋ฒํธ์ ๋งคํ๋ ๋ด๋ถ ์ง์ผ๋ก ์๋ดํด์ค๋ค.
์ด ๋ผ์ฐํฐ๋ผ๋ ๊ฐ์ฌํ ๋ถ์ ํตํด์ ๋๋ ๋ฌด์ฌํ ์ฑ ์์ ์ฃผ๋ฏผ๋ค์๊ฒ ์ฐํธ๋ฌผ์ ๋ฐฐ๋ฌ ํ ์ ์๊ฒ ๋์๋ค.
๋คํธ์ํฌ ์ง์์ด ๊น์ง ์๊ธฐ์ ํฌํธํฌ์๋ฉ์ ํ ๋ ๋ด๋ถ์ ์ผ๋ก ์ ํํ ์ด๋ค ํ๋ก์ธ์ค๋ฅผ ํ๋์ง ์์ง๋ ๋ชปํ์ง๋ง ํฐ ๊ทธ๋ฆผ๋ง ์ต๋ํ ๊ทธ๋ ค๋ณด์๋ค.
์ธ๋ถ์์ ๋ด๋ถ์ ์ฃผ์๋ฅผ ์์ง๋ ๋ชปํด๋ ํฌํธ๋ฅผ ํตํด์ ๋ฐฉํ๋ฒฝ์์ ์๋ ๋ด๋ถ ์๋ฒ์๊ฒ ๊ฐ ์ ์๋ค.
์ค์ ๋ก ์์ ์ ํ์ฌ์์ ํฌํธํฌ์๋ฉ์ ํตํด์ ๋ก์ปฌ์ ๋์ด tomcat์ ํ์ฌ๋ฐ์์ ํ ์คํธ ํ๊ณค ํ์๋ค.
Docker port forwarding ๐
์ด์ ์ด๋ฏธ์ง๋ฅผ ์ปจํ ์ด๋ํ ํ ๋ ํฌํธํฌ์๋ฉ์ ํด์ ๋์๋ณด๊ฒ ๋ค.
docker run -p 9080:80 httpd #์ธ๋ถ์์ 9080port๋ก ํธ์ถํ๋ฉด 80port๋ก ๋ฐ๋๋ก ์ค์
๋ธ๋ผ์ฐ์ ์์ localhost:9080์ผ๋ก ํธ์ถํ์ ์์ํ๋ฐ๋ก Docker์ apache webserver์ index.html์ด ํ์๋์๋ค.
๊ทธ๋ฌ๋ ์ง๊ธ์ ํฌ๊ทธ๋ผ์ด๋๋ก ๋์ด๊ฑฐ๋ผ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ๋์์ผ ํ๋ค.
ํฐ๋ฏธ๋์ด ์ข ๋ฃ๋๋ฉด ์๋น์ค๋ ์ข ๋ฃ๋๋ค๋ ์๋ฏธ๋ค.
ํฌํธํฌ์๋ฉ์ ํตํด ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์ปจํ ์ด๋ํํ๋ ์ ์ฒด ๋ช ๋ น์ด๋ ์๋์ ๊ฐ๋ค.
docker run -d -p 9080:80 httpd # ์น์๋ฒ๋ฅผ ํฌํธํฌ์๋ฉ(-p ์ต์
)ํด์ ๋ฐฑ๊ทธ๋ผ์ด๋(-d ์ต์
)๋ก ์คํ
์ฒซ๋ฒ ์งธ ์ ๋ ฅํ๋ ๋ช ๋ น์ด์ ์ฐจ์ด๊ฐ ์๋ค๋ฉด docker pull...์ ํตํด์ ์ด๋ฏธ์ง๋ฅผ pull๋ฐ๋ ๋ช ๋ น์ด๊ฐ ์๋ต๋์๋ค.
docker run ํ ๋ ์ด๋ฏธ์ง๊ฐ ์์ผ๋ฉด pull์ ๋ฐ์์์ ์คํํ๊ธฐ์ ์ด ๋ช ๋ น์ด๊ฐ ๋ ํจ์จ์ ์ด๋ค.
์ด ๋ latest ๋ฒ์ ์ผ๋ก ๋ฐ์์ค๋๊น ํน์ ๋ฒ์ ์ ์คํํ๊ณ ์ถ์ผ๋ฉด ์ด๋ฏธ์ง๋ช ์ ์ถ๊ฐ ์ต์ ์ ๋ถ์ฌ์ผ ํ๋ค.
์ ๋ง ์ด๋ง์ด๋งํ ๊ฒฐ๊ณผ๋ค.

apache web server๋ฅผ ๋์ฐ๋ ค๋ฉด ์ค์นํ๋ก๊ทธ๋จ ๋ค์ด๋ก๋ ํด์ ์๋น์ค ์คํ ๋ช ๋ น์ด๋ฅผ ํตํด ์คํ, ๊ฒฝ์ฐ์ ๋ฐ๋ผ config๋ ๋ณ๊ฒฝํด์ผ ๋๋ ๊ฒฝ์ฐ๋ ์๋๋ฐ ์ด๊ฒ๋ ๋๋ต ๋นจ๋ผ๋ 10~15๋ถ ์ก์๋จน๋๋ค.
๊ทธ๋ฐ๋ฐ Docker๋ฅผ ํตํด์ ๋ช ๋ น์ด ํ์ค์ ๋จ ๋ช ์ด๋ง์ apache web server๊ฐ ์คํ์ด ๋์๋ค.
๋๋๋ผ๋ฅผ ์ฌ์ฉํ๋ค๊ฐ ๋ถ์ ๋ฐ๊ฒฌํ๋ฉด ์ด๋ฐ ๋๋์ด๋ผ๊ณ ํด์ผ ๋ ๊น?
๋์ปค๋ฅผ ์ด์ ๋ง ๊ณต๋ถํ๊ธฐ ์์ํ์ง๋ง ์ด๊ฒ๋ ์ด์ฌํ ๊ณต๋ถํด์ผ ๊ฒ ๋ค.
๊ณต๋ถํ ๊ฒ ์ฐธ ๋ง์ง๋ง ์ฆ๊ฒ๋ค.
reference: https://www.youtube.com/watch?v=dZ89MJZ4vJw
๊ฐ์ธ ์คํฐ๋ ๊ธฐ๋ก์ ๋ฉ๋ชจํ๋ ๊ณต๊ฐ์ด๋ผ ํ๋ฆฐ์ ์ด ์์ ์ ์์ต๋๋ค.
ํ๋ฆฐ ์ ์์ ๊ฒฝ์ฐ ๋๊ธ ๋ถํ๋๋ฆฝ๋๋ค.
[Docker] Docker Compose [1] (ํ ์คํธ ์์)
๋ชฉ์ฐจDocker Compose ์ด์ฉํด์ mysql ์ปจํ ์ด๋ ์คํ ํ ๋ณผ๋ฅจ ๊ด๋ จ ํ ์คํธ ํ๋ ๊ฐ๋จํ ์์ docker-compose.yml ๐yml ํ์์ด๋ผ ๋ค์ฌ์ฐ๊ธฐ ์ฃผ์services:# db๋ผ๋ ์ด๋ฆ์ ๋ด๋ง๋๋ก ๊ทธ ์์ image, restart ๋ฑ์ ์์ ๋ถ
yaga.tistory.com
[AWS] EC2 + Docker + RDS๋ก ์ฝ๊ฒ ๋ฐฐ์ฐ๋ ์๋ฒ ๋ฐ DB ๊ตฌ์ถ ๊ฐ์ด๋ ๐๐ป๐ฆ
์ด ํฌ์คํ ์ AWS ํ์๊ฐ์ ๋ถํฐ EC2/RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์น์๋ฒ์ ์ฐ๋ํ ๊ธฐ๋ณธ ๊ฐ์ด๋์ ๋๋ค.๋น ๋ฅธ ์์ผ๋ด์ AWS ํ์๊ฐ์ ๋ถํฐ ์ํคํ ์ฒ 3๊น์ง ๊ตฌ์ถํ๋ ๋ผ์ด๋ธ ์์ ํฌ์คํ ์์ ์ ๋๋ค.2025๋ 2์15
yaga.tistory.com
'IT > DevOps' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Docker] Docker ์คํ์ค์ธ container ์กฐ์(feat. Windows 10) (54) | 2023.10.26 |
---|---|
[Docker] ๋ชจ๋ image ์ญ์ (feat. windows) (61) | 2023.10.26 |
[Docker] Docker image pull/remove(feat. Docker Hub) (55) | 2023.10.25 |
[AWS] AWS IAM ์ฌ์ฉ์๋ก ์ธ์คํด์ค ์์ฑ/ssh ์ ์ (44) | 2023.08.21 |
[AWS] AWS IAM ์ฌ์ฉ์/๊ทธ๋ฃน ์์ฑ(feat. root๊ณ์ ) (41) | 2023.08.20 |
๋๊ธ