Docker
Docker ํต์ฌ ๋ช ๋ น์ด ๋ฐ ์๋ฏธ ์ ๋ฆฌ
9taetae9
2025. 4. 6. 00:24
728x90
๊ธฐ๋ณธ ๋ช ๋ น์ด
- docker run - '์คํํ๋ค'
- ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ ์ปจํ ์ด๋๋ฅผ ์์ฑํ๊ณ ์์
- ์: docker run nginx - Nginx ์ด๋ฏธ์ง๋ก ์ปจํ ์ด๋๋ฅผ ์คํ
- docker pull - '๋น๊ธฐ๋ค/๊ฐ์ ธ์ค๋ค'
- Docker Hub ๋๋ ๋ค๋ฅธ ๋ ์ง์คํธ๋ฆฌ์์ ์ด๋ฏธ์ง๋ฅผ ๋ก์ปฌ ์์คํ ์ผ๋ก ๋ค์ด๋ก๋
- ์: docker pull ubuntu - Ubuntu ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋
- docker push - '๋ฐ๋ค/์ฌ๋ฆฌ๋ค'
- ๋ก์ปฌ์์ ๋ง๋ ์ด๋ฏธ์ง๋ฅผ Docker Hub๋ ๋ค๋ฅธ ๋ ์ง์คํธ๋ฆฌ์ ์ ๋ก๋
- ์: docker push myusername/myapp - ๋ง๋ ์ด๋ฏธ์ง๋ฅผ ๋ ์ง์คํธ๋ฆฌ์ ์ ๋ก๋
- docker build - '๊ตฌ์ถํ๋ค'
- Dockerfile์ ์ฌ์ฉํ์ฌ ์ Docker ์ด๋ฏธ์ง๋ฅผ ์์ฑ
- ์: docker build -t myapp . - ํ์ฌ ๋๋ ํ ๋ฆฌ์ Dockerfile๋ก 'myapp' ์ด๋ฏธ์ง๋ฅผ ์์ฑ
๊ธฐ๋ณธ ๋ช ๋ น์ด(์์ฉ)
- docker run --rm - '์คํ ํ ์๋ ์ญ์ '
- ์ปจํ ์ด๋๊ฐ ์ข ๋ฃ๋ ๋ ์๋์ผ๋ก ์ปจํ ์ด๋๋ฅผ ์ญ์
- ์: docker run --rm nginx - Nginx ์ปจํ ์ด๋๋ฅผ ์คํํ๊ณ ์ข ๋ฃ ์ ์๋ ์ญ์
- docker run -v - '๋ณผ๋ฅจ ๋ง์ดํธ'
- ํธ์คํธ ์์คํ ์ ๋๋ ํ ๋ฆฌ๋ฅผ ์ปจํ ์ด๋ ๋ด๋ถ์ ์ฐ๊ฒฐ
- ์: docker run -v /host/path:/container/path nginx - ํธ์คํธ ๋๋ ํ ๋ฆฌ๋ฅผ ์ปจํ ์ด๋์ ๋ง์ดํธ
- docker run -p - 'ํฌํธ ๋งคํ'
- ํธ์คํธ์ ํฌํธ์ ์ปจํ ์ด๋์ ํฌํธ๋ฅผ ์ฐ๊ฒฐ
- ์: docker run -p 8080:80 nginx - ํธ์คํธ์ 8080 ํฌํธ๋ฅผ ์ปจํ ์ด๋์ 80 ํฌํธ์ ์ฐ๊ฒฐ
- docker build --no-cache - '์บ์ ์์ด ๋น๋'
- ์ด์ ๋น๋ ์บ์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ฒ์๋ถํฐ ์ด๋ฏธ์ง๋ฅผ ๋น๋
- ์: docker build --no-cache -t myapp . - ์บ์ ์์ด ์๋ก ๋น๋
์ปจํ ์ด๋ ๊ด๋ฆฌ
- docker ps - 'process status'์ ์ฝ์
- ์คํ ์ค์ธ ์ปจํ ์ด๋ ๋ชฉ๋ก์ ํ์
- ์: docker ps -a - ๋ชจ๋ ์ปจํ ์ด๋(์ค์ง๋ ๊ฒ ํฌํจ)๋ฅผ ๋ณด์ฌ์ค
- docker stop - '์ค์งํ๋ค'
- ์คํ ์ค์ธ ์ปจํ ์ด๋๋ฅผ ์ค์ง
- ์: docker stop my-container - 'my-container'๋ฅผ ์ค์ง
- docker start - '์์ํ๋ค'
- ์ค์ง๋ ์ปจํ ์ด๋๋ฅผ ๋ค์ ์์
- ์: docker start my-container - ์ค์ง๋ 'my-container'๋ฅผ ์์
- docker restart - '์ฌ์์ํ๋ค'
- ์ปจํ ์ด๋๋ฅผ ์ค์งํ๊ณ ๋ค์ ์์
- ์: docker restart my-container - 'my-container'๋ฅผ ์ฌ์์
- docker exec - 'execute'์ ์ฝ์, '์คํํ๋ค'
- ์คํ ์ค์ธ ์ปจํ ์ด๋ ๋ด๋ถ์์ ๋ช ๋ น์ ์คํํ๊ฒ ํด์ฃผ๋ ๋ช ๋ น์ด
- ์: docker exec -it my-container bash - 'my-container' ๋ด์์ bash ์ ธ์ ์คํ
- -it - ๋ ๊ฐ์ ํ๋๊ทธ๊ฐ ๊ฒฐํฉ๋ ํํ
- -i (interactive, ๋ํํ): ํ์ค ์ ๋ ฅ(STDIN)์ ์ด์ด๋์ด ํค๋ณด๋๋ก ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ ์ ์๊ฒ ํจ
- -t (tty): ๊ฐ์ ํฐ๋ฏธ๋์ ํ ๋นํ์ฌ ๋ช ๋ น์ด ํ์คํ ๋ฆฌ, ์๋ ์์ฑ, ํ ์คํธ ํธ์ง ๋ฑ ์ผ๋ฐ์ ์ธ ํฐ๋ฏธ๋ ๊ธฐ๋ฅ์ ์ ๊ณต
- docker rm - 'remove'์ ์ฝ์, '์ ๊ฑฐํ๋ค'
- ํ๋ ์ด์์ ์ปจํ ์ด๋๋ฅผ ์ญ์
- ์: docker rm my-container - 'my-container'๋ฅผ ์ญ์
์ปจํ ์ด๋ ๊ด๋ฆฌ(์ฌํ)
- docker stats - 'ํต๊ณ ๋ณด๊ธฐ'
- ์คํ ์ค์ธ ์ปจํ ์ด๋์ ๋ฆฌ์์ค ์ฌ์ฉ๋(CPU, ๋ฉ๋ชจ๋ฆฌ ๋ฑ) ์ค์๊ฐ ํ์
- ์: docker stats - ๋ชจ๋ ์คํ ์ค์ธ ์ปจํ ์ด๋์ ๋ฆฌ์์ค ์ฌ์ฉ๋ ํ์
- docker inspect - '๊ฒ์ฌํ๋ค'
- ์ปจํ ์ด๋๋ ์ด๋ฏธ์ง์ ์์ธ ์ ๋ณด๋ฅผ JSON ํ์์ผ๋ก ํ์
- ์: docker inspect my-container - ์ปจํ ์ด๋์ ๋คํธ์ํฌ, ๋ณผ๋ฅจ, ํ๊ฒฝ๋ณ์ ๋ฑ ๋ชจ๋ ์ค์ ํ์ธ
- docker cp - 'copy'์ ์ฝ์, '๋ณต์ฌํ๋ค'
- ์ปจํ ์ด๋์ ํธ์คํธ ์์คํ ๊ฐ ํ์ผ ๋ณต์ฌ
- ์: docker cp my-container:/app/data.txt ./local/ - ์ปจํ ์ด๋์์ ํธ์คํธ๋ก ํ์ผ ๋ณต์ฌ
- docker commit
- ์ปจํ ์ด๋์ ๋ณ๊ฒฝ์ฌํญ์ ์ ์ด๋ฏธ์ง๋ก ์ ์ฅ
- ์: docker commit my-container my-new-image - ๋ณ๊ฒฝ๋ ์ปจํ ์ด๋๋ฅผ ์ ์ด๋ฏธ์ง๋ก ์์ฑ
- docker update
- ์คํ ์ค์ธ ์ปจํ ์ด๋์ ์์ ์ ํ ์ค์ ์ ๋ณ๊ฒฝ
- ์: docker update --memory 2G my-container - ์ปจํ ์ด๋์ ๋ฉ๋ชจ๋ฆฌ ์ ํ์ 2G๋ก ๋ณ๊ฒฝ
- docker diff - 'difference'์ ์ฝ์, '์ฐจ์ด์ '
- ์ปจํ ์ด๋์ ํ์ผ ์์คํ ๋ณ๊ฒฝ ์ฌํญ์ ํ์
- ์: docker diff my-container - ์ปจํ ์ด๋๊ฐ ์์๋ ์ดํ ๋ณ๊ฒฝ๋ ํ์ผ ๋ชฉ๋ก ํ์
์ด๋ฏธ์ง ๊ด๋ฆฌ
- docker images - '์ด๋ฏธ์ง๋ค'
- ๋ก์ปฌ์ ์ ์ฅ๋ Docker ์ด๋ฏธ์ง ๋ชฉ๋ก์ ํ์
- ์: docker images - ๋ชจ๋ ๋ก์ปฌ ์ด๋ฏธ์ง๋ฅผ ๋์ด
- docker rmi - 'remove image'์ ์ฝ์
- ํ๋ ์ด์์ ์ด๋ฏธ์ง๋ฅผ ์ญ์
- ์: docker rmi nginx - nginx ์ด๋ฏธ์ง๋ฅผ ์ญ์
- docker tag - 'ํ๊ทธ ๋ถ์ด๋ค'
- ์ด๋ฏธ์ง์ ํ๊ทธ๋ฅผ ์ง์ (์ด๋ฆ๊ณผ ๋ฒ์ ๋ฑ)
- ์: docker tag myapp myusername/myapp:1.0 - myapp ์ด๋ฏธ์ง์ ์ ํ๊ทธ๋ฅผ ๋ถ์ฌ
์ด๋ฏธ์ง ๊ด๋ฆฌ(์ฌํ)
- docker history
- ์ด๋ฏธ์ง์ ๋ ์ด์ด ํ์คํ ๋ฆฌ ํ์
- ์: docker history nginx - nginx ์ด๋ฏธ์ง์ ๊ฐ ๋ ์ด์ด ์์ฑ ๊ณผ์ ํ์ธ
- docker save
- ์ด๋ฏธ์ง๋ฅผ tar ํ์ผ๋ก ์ ์ฅํ์ฌ ๋ฐฑ์
- ์: docker save -o nginx.tar nginx - nginx ์ด๋ฏธ์ง๋ฅผ tar ํ์ผ๋ก ์ ์ฅ
- docker load - '๋ถ๋ฌ์ค๋ค'
- ์ ์ฅ๋ tar ํ์ผ์์ ์ด๋ฏธ์ง ๋ถ๋ฌ์ค๊ธฐ
- ์: docker load -i nginx.tar - tar ํ์ผ์์ ์ด๋ฏธ์ง ๋ก๋
- docker prune - '์ ๋ฆฌํ๋ค'
- ์ฌ์ฉํ์ง ์๋ Docker ๊ฐ์ฒด(์ปจํ ์ด๋, ์ด๋ฏธ์ง, ๋ณผ๋ฅจ ๋ฑ)๋ฅผ ์ ๋ฆฌ
- ์: docker image prune -a - ์ฌ์ฉํ์ง ์๋ ๋ชจ๋ ์ด๋ฏธ์ง ์ญ์
- docker buildx - 'ํ์ฅ ๋น๋'
- ๋ค์ค ์ํคํ ์ฒ ์ด๋ฏธ์ง ๋น๋ ๊ธฐ๋ฅ
- ์: docker buildx build --platform linux/amd64,linux/arm64 -t myapp . - ์ฌ๋ฌ ์ํคํ ์ฒ์ฉ ์ด๋ฏธ์ง ๋น๋
์์คํ ๊ด๋ฆฌ
- docker info
- Docker ์์คํ ์ ์ฒด ์ ๋ณด๋ฅผ ํ์
- ์: docker info - Docker ํ๊ฒฝ์ ๋ํ ์์ธ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ค
- docker logs
- ์ปจํ ์ด๋์ ๋ก๊ทธ ์ถ๋ ฅ์ ํ์
- ์: docker logs my-container - 'my-container'์ ๋ก๊ทธ๋ฅผ ๋ณด์ฌ์ค
- docker network
- Docker ๋คํธ์ํฌ๋ฅผ ๊ด๋ฆฌ
- ์: docker network create my-network - 'my-network'๋ผ๋ ์ ๋คํธ์ํฌ๋ฅผ ์์ฑ
- docker volume - ๋ฐ์ดํฐ ์ ์ฅ์
- Docker ๋ณผ๋ฅจ(๋ฐ์ดํฐ ์ ์ฅ์)์ ๊ด๋ฆฌ
- ์: docker volume create my-volume - 'my-volume'์ด๋ผ๋ ์ ๋ณผ๋ฅจ์ ์์ฑ
- docker-compose - '๊ตฌ์ฑํ๋ค'
- ์ฌ๋ฌ ์ปจํ ์ด๋๋ก ๊ตฌ์ฑ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ ์ํ๊ณ ์คํ
- ์: docker-compose up - docker-compose.yml ํ์ผ์ ์ ์๋ ์๋น์ค๋ฅผ ์์
์์คํ ๊ด๋ฆฌ(์ฌํ)
- docker context
- ์ฌ๋ฌ Docker ํธ์คํธ ๊ฐ ์ ํ์ ์ํ ํ๊ฒฝ ๊ด๋ฆฌ
- ์: docker context use production - ํ๋ก๋์ ํ๊ฒฝ์ผ๋ก ์ปจํ ์คํธ ์ ํ
- docker events
- Docker ์๋ฒ์์ ๋ฐ์ํ๋ ์ค์๊ฐ ์ด๋ฒคํธ ์คํธ๋ฆผ ํ์
- ์: docker events - ์ปจํ ์ด๋ ์์/์ค์ง, ์ด๋ฏธ์ง ์์ฑ ๋ฑ์ ์ด๋ฒคํธ ์ค์๊ฐ ๋ชจ๋ํฐ๋ง
- docker system df - '๋์คํฌ ์ฌ์ฉ๋'
- Docker๊ฐ ์ฌ์ฉํ๋ ๋์คํฌ ๊ณต๊ฐ ํ์ธ
- ์: docker system df - ์ด๋ฏธ์ง, ์ปจํ ์ด๋, ๋ณผ๋ฅจ์ด ์ฌ์ฉํ๋ ๊ณต๊ฐ ํ์
- docker network inspect - '๋คํธ์ํฌ ๊ฒ์ฌ'
- Docker ๋คํธ์ํฌ์ ์์ธ ์ ๋ณด ํ์ธ
- ์: docker network inspect bridge - ๊ธฐ๋ณธ ๋ธ๋ฆฌ์ง ๋คํธ์ํฌ์ ์์ธ ์ ๋ณด ํ์ธ
- docker secret
- ๋น๋ฐ๋ฒํธ, API ํค ๋ฑ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ฒ ๊ด๋ฆฌ
- ์: docker secret create db_password password.txt - ๋น๋ฐ ๋ฐ์ดํฐ ์์ฑ
728x90