컨테이너 생성 + 실행
docker run 명령은 이미지를 기반으로 컨테이너를 생성하고 실행까지 시켜주는 명령어입니다.
처음 이미지를 실행하고자 할 때 가장 자주 사용되는 기본 명령이에요.
docker run [옵션] 이미지명[:태그명]
예시 👇
docker run nginx
Ctrl + C 로 실행 중인 컨테이너를 종료할 수 있습니다.
로컬에 해당 이미지가 없다면 Dockerhub에서 자동으로 다운로드(pull) 후 실행됩니다.
컨테이너를 백그라운드에서 실행시키기
컨테이너를 실행할 때 -d 옵션을 사용하면 백그라운드(Background) 모드로 실행할 수 있습니다.
docker run -d 이미지명[:태그명]
예시 👇
docker run -d nginx
Foreground vs Background 차이
| 구분 | 설명 |
| Foreground(포그라운드) | 터미널 환경에 실행 결과가 실시간 출력됨. 다른 명령을 입력할 수 없음 |
| Background(백그라운드) | 터미널에 출력되지 않고 백그라운드에서 실행됨. 다른 명령을 입력할 수 있 |
즉, -d 옵션은 “터미널을 점유하지 않고 백그라운드에서 컨테이너를 돌리겠다”는 뜻이에요.
컨테이너 이름 붙이기
컨테이너를 생성할 때 --name 옵션을 사용하면 이름을 지정할 수 있습니다.
docker run -d --name [컨테이너이름] 이미지명[:태그명]
예시 👇
docker run -d --name my-web-server nginx
호스트 포트와 컨테이너 포트 연결하기
컨테이너 내부 서비스(Nginx, Flask 등)에 외부에서 접근하려면,
호스트의 포트와 컨테이너의 포트를 연결해야 합니다.
docker run -d -p [호스트포트]:[컨테이너포트] 이미지명[:태그명]
예시 👇
docker run -d -p 4000:80 nginx
위 명령은 호스트(내 PC)의 4000번 포트를
컨테이너 내부의 80번 포트와 연결하겠다는 의미입니다.
따라서 브라우저에서 http://localhost:4000 으로 접속하면
컨테이너 내부의 Nginx 서버에 접근할 수 있습니다.
정리하면
🐳 docker run -d -p 4000:80 --name my-web nginx
→ “nginx 컨테이너를 백그라운드에서 실행하고, 이름은 my-web으로 지정하며,
호스트 4000번 포트를 컨테이너 80번 포트로 연결한다.”
'컨테이너·워크플로우 자동화 > DocKer 기본 및 활용' 카테고리의 다른 글
| 실행 중인 컨테이너 내부에 접속하기 (exec -it) (0) | 2025.10.11 |
|---|---|
| Docker 컨테이너(Container) 로그 조회 (0) | 2025.10.11 |
| Docker 컨테이너(Container) 생성과 실행 (0) | 2025.10.11 |
| Docker 이미지(Image) 조회 및 삭제 정리 (0) | 2025.10.11 |
| Docker 이미지(Image) 다운로드 정리 (0) | 2025.10.11 |