TITEDIOS Dev Note

[Docker]#8 Docker 기본 명령어 - run 명령 활용 가이드 및 사례 본문

Docker

[Docker]#8 Docker 기본 명령어 - run 명령 활용 가이드 및 사례

TitediosKW 2024. 8. 16. 19:00
반응형


Docker run 명령어는 컨테이너를 실행하는 데 사용되며, 다양한 옵션을 통해 여러 가지 방식으로 활용할 수 있습니다. 여기 몇 가지 유용한 사용 사례를 소개합니다.


사례 1. 기본적인 컨테이너 실행

가장 기본적인 사용법으로, Docker Hub에서 이미지를 다운로드하여 컨테이너를 실행합니다.

docker run hello-world

이 명령어는 hello-world 이미지를 다운로드하고, 해당 컨테이너를 실행하여 간단한 메시지를 출력합니다.


사례 2. 백그라운드에서 Nginx 웹 서버 실행

Nginx 웹 서버를 백그라운드에서 실행하여 호스트의 포트 8080에 연결합니다.

docker run -d -p 8080:80 nginx

이 명령어는 Nginx 컨테이너를 백그라운드에서 실행하고, 호스트의 포트 8080을 컨테이너의 포트 80에 매핑합니다.


반응형

사례 3. MySQL 데이터베이스 실행

환경 변수를 설정하여 MySQL 데이터베이스 컨테이너를 실행합니다.

docker run -d -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_DATABASE=mydb -e MYSQL_USER=myuser -e MYSQL_PASSWORD=mypassword mysql

이 명령어는 MySQL 컨테이너를 실행하고, 루트 비밀번호 및 데이터베이스 정보를 환경 변수로 설정합니다.


사례 4. 로컬 디렉토리를 컨테이너에 마운트

호스트의 디렉토리를 컨테이너에 마운트하여 파일을 공유합니다.

docker run -d -v /my/host/directory:/my/container/directory nginx

이 명령어는 호스트의 /my/host/directory 디렉토리를 컨테이너의 /my/container/directory 디렉토리에 마운트합니다.


사례 5. 임시 컨테이너 실행 후 자동 삭제

임시 컨테이너를 실행하고 작업이 끝나면 자동으로 삭제합니다.

docker run --rm busybox echo "Hello, World!"

이 명령어는 busybox 컨테이너를 실행하여 "Hello, World!"를 출력하고, 작업이 완료되면 컨테이너를 자동으로 삭제합니다.


사례 6. 대화형 셸 실행

Ubuntu 컨테이너에서 대화형 셸을 실행하여 직접 명령어를 입력할 수 있습니다.

docker run -it --rm ubuntu /bin/bash

이 명령어는 Ubuntu 컨테이너에서 Bash 셸을 실행하고, 사용자가 직접 명령어를 입력할 수 있도록 합니다. Bash 셸을 이용한 후 컨테이너를 종료하면 자동으로 컨테이너를 삭제합니다. 이를 통해 간단한 명령어 테스트 등을 수행할 수 있습니다.


사례 7. 사용자 지정 네트워크에 컨테이너 연결

사용자 정의 네트워크에 컨테이너를 연결하여 실행합니다.

docker network create mynetwork # Docker 내부의 네트워크를 생성하는 명령어
docker run -d --network mynetwork nginx

첫 번째 명령어는 mynetwork라는 사용자 정의 네트워크를 생성하고, 두 번째 명령어는 mynetwork 네트워크에 연결된 Nginx 컨테이너를 실행합니다.


결론

위의 사례들은 Docker의 기본적인 사용법을 보여주며, 이를 바탕으로 더 복잡한 컨테이너 배포와 관리를 수행할 수 있습니다. 이런 사례들을 작성하고 실행해 보면서 Docker 활용에 대해 익혀나갈 수 있을 것입니다.


도움이 되셨다면 공감 부탁드리겠습니다. 여러분의 공감이 정말 큰 힘이 됩니다.


감사합니다!

반응형