도커 사용법 기본개념
도커를 사용하는 가장 기본적인 흐름은 다음과 같습니다.
- 이미지 다운로드: 필요한 이미지 도커 허브(레지스트리)에서 찾아 다운로드합니다.
- 컨테이너 실행: 다운로드한 이미지를 이용해 '컨테이너'라는 독립된 공간을 만들고 실행합니다.
- 컨테이너 관리: 실행 중인 컨테이너의 상태를 확인하고 필요에 따라 중지하거나 삭제합니다.
도커 허브? 및 설정하기(Registry)
도커 허브란 도커에서 제공하는 컨테이너 이미지 레지스트리 서비스입니다. 이미지를 제공하고,관리하고 다운로드 할 수 있는
레지스트리입니다. 또한 도커 사설 레지스트리 (Private Registry) 를 별도로 운영하여 개인적인 소스코드 이미지등을 관리할 수 있는 허브를 제공합니다.
1. 도커 허브 계정 생성
먼저, 웹사이트에서 회원가입을 해야 합니다.
URL: https://hub.docker.com/ 에 접속하여 회원가입
2. 로그인
계정을 만들었다면, 이제 내 컴퓨터에서 도커 허브에 접속할 차례입니다.
docker login 명령어를 사용
$ docker login명령어를 입력하면, 터미널이 사용자 이름과 비밀번호를 차례로 물어봅니다.
도커 사이트에서 가입한 사용자 이름과 비밀번호를 입력하면, Login Succeeded라는 메시지가 뜨면서 로그인이 완료됩니다.
WARNING! Your password will be stored unencrypted in /home/lainyzine/.docker/config.json. 
Configure a credential helper to remove this warning. 
See https://docs.docker.com/engine/reference/commandline/login/#credentials-
Login Succeeded
내가 만든 이미지 도커 허브에 올리기
로그인을 완료했다면, 이제 내가 만든 이미지를 도커 허브에 공유할 수 있습니다. 이미지를 올리는 것을 '푸시(Push)'라고 부릅니다.
1. 이미지(Image) 이름 지정하기 (Tagging)
도커 허브에 이미지를 올리려면, [사용자 이름]/[저장소 이름]:[태그] 형식으로 이름을 바꿔줘야 합니다.
$ docker tag my-app:latest myusername/my-app:1.0
- docker tag 명령어를 사용해 새로운 이름을 지정해 줍니다.예를 들어, my-app 이라는 이미지를 만들었고, 내 도커 허브 사용자 이름이 myusername이라면..
- my-app:latest : 현재 내 컴퓨터에 있는 이미지 이름과 태그/
- -myusername/my-app:1.0 : 도커 허브에 올릴 때 사용할 새로운 이름
2. 이미지(Image) 푸시하기 (Push)
이름을 변경한 이미지를 도커 허브에 올립니다.
- docker push 명령어를 사용합니다.
- 
$ docker push myusername/my-app:1.0
- 이 명령어를 실행하면, 이미지가 도커 허브에 업로드됩니다.
프라이빗(Private) 레지스트리
도커 허브 외에, 회사나 조직 내부에서만 사용하는 비공개 저장소를 만들 수도 있습니다. 이를 프라이빗 레지스트리라고 부릅니다.
- 로그인 방법: docker login 명령어 뒤에 레지스트리 주소를 입력합니다.
$ docker login [레지스트리 주소]
사용 목적: 보안을 위해 외부에 공개되지 않는 중요한 이미지를 관리하거나, 내부 협업을 효율적으로 하기 위해 사용합니다.
필수 도커 명령어 총정리
1. 이미지(Image) 관련 명령어
- docker pull [이미지 이름]
- 설명: 도커 허브에서 원하는 이미지를 다운로드합니다.
$ docker pull nginx
 
- 설명: 도커 허브에서 원하는 이미지를 다운로드합니다.
- docker images
- 설명: 내 컴퓨터에 다운로드된 이미지 목록을 보여줍니다.
$ docker images
 
- 설명: 내 컴퓨터에 다운로드된 이미지 목록을 보여줍니다.
- docker rmi [이미지 이름 또는 ID]
- 설명: 다운로드된 이미지를 삭제합니다. 컨테이너가 실행 중인 이미지는 삭제할 수 없습니다
- 
$ docker rmi nginx
 
2. 컨테이너 관련 명령어
컨테이너는 이미지로부터 만들어진 '실행 중인 프로그램'입니다.
- docker run [옵션] [이미지 이름]
 이미지를 이용해 컨테이너를 만들고 실행합니다. 도커의 가장 핵심적인 명령어입니다.- 자주 쓰는 옵션:
- -d: 컨테이너를 백그라운드에서 실행합니다. (떼어내기, Detached mode)
- -p [외부 포트]:[내부 포트]: 컨테이너의 포트를 외부와 연결합니다. (Port forwarding)
- --name [이름]: 컨테이너에 알아보기 쉬운 이름을 붙여줍니다.
 nginx 컨테이너를 만들고, 80번 포트를 컴퓨터의 8080번 포트와 연결하여 백그라운드에서 실행$ docker run -d -p 8080:80 --name my-nginx nginx
 
 
- 자주 쓰는 옵션:
- docker ps
 현재 실행 중인 컨테이너 목록을 보여줍니다. -a 옵션을 붙이면 모든 컨테이너(실행 중 + 정지된)를 볼 수 있습니다.$ docker ps
- docker stop [컨테이너 이름 또는 ID]
 실행 중인 컨테이너를 정지합니다.$ docker stop my-nginx
- docker rm [컨테이너 이름 또는 ID]
 설명: 정지된 컨테이너를 삭제합니다. (실행 중인 컨테이너는 먼저 stop해야 합니다.)$ docker rm my-nginx
예제: 나만의 웹 서버 띄우기
위의 명령어들을 이용해 간단한 웹 서버를 띄워보기.
- Nginx 이미지 다운로드:
- 
$ docker pull nginx
- 컨테이너 실행 및 포트 연결:이 명령어를 실행하면 nginx 컨테이너가 백그라운드에서 실행됩니다. 내 컴퓨터의 8080번 포트로 들어오는 요청을 컨테이너의 80번 포트로 보내게 됩니다.
$ docker run -d -p 8080:80 --name my-nginx nginx
- 브라우저 확인:
 웹 브라우저를 열고 주소창에 http://localhost:8080을 입력
 화면이 출력이 되는지확인
- 컨테이너 정지 및 삭제
 서버를 멈추고 삭제
$ docker stop my-nginx
$ docker rm my-nginx'Cloud > 컨테이너(Container)' 카테고리의 다른 글
| 도커(Docker)란 무엇일까? (0) | 2025.09.05 | 
|---|