sitelink1 | |
---|---|
sitelink2 | |
sitelink3 | |
extra_vars6 |
Docker Hub에서 docker pull ubuntu
명령으로 다운로드한 ubuntu
이미지를 Portainer를 통해 실행하고 해당 컨테이너에 접속하는 방법을 단계별로 설명해 드리겠습니다.
1. Ubuntu 이미지 다운로드 (이미 완료하셨을 경우 스킵)
만약 아직 Ubuntu 이미지를 다운로드하지 않았다면, WSL2 Ubuntu 터미널에서 다음 명령어를 실행합니다:
docker pull ubuntu
이 명령어는 Docker Hub에서 ubuntu:latest
이미지를 다운로드합니다.
2. Portainer 웹 인터페이스 접속
웹 브라우저를 열고 Portainer가 실행 중인 주소(예: http://localhost:9000
또는 http://<WSL_IP_주소>:9000
)로 이동하여 로그인합니다.
3. 컨테이너 생성 페이지로 이동
- 왼쪽 사이드바에서 **"Containers"**를 클릭합니다.
- 오른쪽 상단 또는 화면 중앙에 있는 "+ Add container" 버튼을 클릭합니다.
4. Ubuntu 컨테이너 설정 입력
새 컨테이너 추가 페이지에서 다음과 같은 정보를 입력합니다.
-
Name (컨테이너 이름):
- 컨테이너의 이름을 지정합니다. 예:
my-ubuntu-container
또는ubuntu-dev
- 컨테이너의 이름을 지정합니다. 예:
-
Image (이미지):
ubuntu
- (선택 사항: 특정 태그를 사용하려면
ubuntu:latest
또는ubuntu:22.04
형식으로 입력합니다.) - "Always pull the image" 옵션은 비활성화합니다. 이미
docker pull
로 다운로드했으므로 다시 다운로드할 필요가 없습니다.
-
Port mapping (포트 매핑):
- Ubuntu 컨테이너는 기본적으로 웹 서버나 특정 서비스를 실행하지 않으므로, 일반적으로 포트 매핑이 필요 없습니다.
- 만약 이 Ubuntu 컨테이너 안에 SSH 서버나 웹 서버(예: Nginx, Apache)를 설치하고 외부에서 접속하고 싶다면, 이때 포트 매핑을 추가합니다.
- 예: SSH 접속을 위해
Host port
를2222
,Container port
를22
로 설정.
- 예: SSH 접속을 위해
-
Restart policy (재시작 정책):
- 컨테이너를 항상 실행 상태로 유지하려면
Unless stopped
를 선택하는 것이 좋습니다.
- 컨테이너를 항상 실행 상태로 유지하려면
-
Command (명령):
- 이것이 중요한 부분입니다. Ubuntu 컨테이너는 기본적으로 아무것도 실행하지 않으면 바로 종료됩니다. 컨테이너가 계속 실행되도록 하려면, 컨테이너 내에서 계속 실행될 명령어를 지정해야 합니다. 가장 흔한 방법은
bash
셸을 실행하는 것입니다. Command
필드에 다음을 입력합니다:/bin/bash
- "Interactive & TTY" (상호 작용 및 TTY 할당) 옵션을 활성화합니다.
Interactive
(상호 작용): 컨테이너가 터미널 입력을 받을 수 있도록 합니다.TTY
(가상 터미널 할당): 터미널을 할당하여 셸 명령어를 실행할 수 있도록 합니다.- 이 두 옵션이 활성화되어야 나중에
exec
명령으로 컨테이너에 접속했을 때 셸을 사용할 수 있습니다.
- 이것이 중요한 부분입니다. Ubuntu 컨테이너는 기본적으로 아무것도 실행하지 않으면 바로 종료됩니다. 컨테이너가 계속 실행되도록 하려면, 컨테이너 내에서 계속 실행될 명령어를 지정해야 합니다. 가장 흔한 방법은
5. 컨테이너 배포 (Deploy the container)
- 모든 설정을 확인한 후, 하단의 "Deploy the container" 버튼을 클릭합니다.
6. 컨테이너 접속 방법
컨테이너가 성공적으로 배포되어 실행 중(running
) 상태가 되면, Portainer를 통해 두 가지 방법으로 접속할 수 있습니다:
방법 1: Portainer 웹 UI의 Console 기능 사용 (가장 간편)
-
"Containers" 목록으로 돌아갑니다.
-
방금 생성한
my-ubuntu-container
(또는 지정한 이름) 컨테이너의 이름을 클릭합니다. -
컨테이너 세부 정보 페이지에서 상단에 있는 "Console" 탭을 클릭합니다.
-
새로운 콘솔 창이 나타나면 "Connect" 버튼을 클릭합니다.
- 이렇게 하면 웹 브라우저 내에서 컨테이너의 bash 셸에 직접 접속하여 명령어를 실행할 수 있습니다. 마치 SSH로 원격 서버에 접속한 것과 같은 환경이 됩니다.
방법 2: WSL2 Ubuntu 터미널에서 docker exec
명령 사용
-
WSL2 Ubuntu 터미널을 엽니다.
-
현재 실행 중인 컨테이너 목록을 확인하여 Ubuntu 컨테이너의 ID 또는 이름을 알아냅니다:
Bash
docker ps
CONTAINER ID
또는NAMES
컬럼에서my-ubuntu-container
(또는 지정한 이름)를 찾습니다.
-
다음 명령어를 사용하여 컨테이너 내부에 접속합니다:
Bash
docker exec -it <컨테이너_ID_또는_이름> bash
-it
: Interactive (상호 작용) 및 TTY (가상 터미널 할당) 옵션을 사용하여 셸에 접속할 수 있도록 합니다.<컨테이너_ID_또는_이름>
: 실제 컨테이너 ID (예:a1b2c3d4e5f6
) 또는 이름 (예:my-ubuntu-container
)으로 대체합니다.bash
: 컨테이너 내부에서 실행할 셸 명령어입니다.
예시:
Bash
docker exec -it my-ubuntu-container bash
이 명령을 실행하면 현재 WSL2 Ubuntu 터미널이 해당 Docker 컨테이너의 셸로 전환됩니다. 컨테이너 내부에서 필요한 작업을 수행할 수 있습니다.
를 입력하면 컨테이너 셸에서 나옵니다. 컨테이너 자체는 계속 실행 중인 상태로 유지됩니다.exit
컨테이너 내에서 원하는 패키지를 설치하거나 작업을 수행할 수 있습니다. 작업을 마친 후 ubuntu
이제