반응형
Docker 설치 방법
Docker는 컨테이너 기반 가상화 기술을 제공하는 플랫폼으로, 애플리케이션의 배포와 실행을 간편하게 할 수 있는 도구이다. 먼저 Docker를 설치하는 방법을 운영체제별로 정리해보겠다.
Windows에서 Docker 설치
- Docker 공식 홈페이지에서 Docker Desktop for Windows를 다운로드한다.
- 설치 파일을 실행하고 안내에 따라 설치를 진행한다.
- 설치가 완료되면 Docker Desktop을 실행하고, Windows의 경우 WSL 2 백엔드를 활성화하는 것이 권장된다.
- 터미널(명령 프롬프트 또는 PowerShell)을 열고 다음 명령어를 실행하여 설치를 확인한다.
docker --version
macOS에서 Docker 설치
- Docker 공식 홈페이지에서 Docker Desktop for Mac을 다운로드한다.
- 다운로드한 .dmg 파일을 열고 Docker를 응용 프로그램 폴더로 이동하여 설치한다.
- Docker Desktop을 실행하고 설정을 완료한다.
- 터미널에서 다음 명령어를 실행하여 정상 설치 여부를 확인한다.
docker --version
Docker 기본 명령어
Docker를 설치한 후에는 컨테이너를 관리하는 다양한 명령어를 사용할 수 있다. 여기서는 자주 사용하는 기본 명령어를 정리해 보겠다.
1. Docker 실행 (docker run) 및 데이터 저장(Volumes)
docker run 명령어는 새로운 컨테이너를 생성하고 실행하는 역할을 한다. 실행할 이미지가 로컬에 없으면 Docker Hub에서 자동으로 다운로드한 후 컨테이너를 생성한다. Volume은 MySQL등과 같은 데이터 저장이 필요한 컨테이너에서 사용시 컨테이너가 삭제되어도 데이터가 삭제되지 않도록 해주는 역할을 한다.
MySQL 컨테이너 실행
MySQL 컨테이너를 실행하려면 다음 명령어를 사용한다.
docker run --name mysql-container -d -e MYSQL_ROOT_PASSWORD=my-pw -p 3306:3306 mysql
설명:
- --name mysql-container : 컨테이너의 이름을 mysql-container로 지정한다.
- -d : 컨테이너를 백그라운드에서 실행한다.
- -e MYSQL_ROOT_PASSWORD=my-pw : MySQL 루트 계정의 비밀번호를 my-pw로 설정한다.
- -p 3306:3306 : MySQL 컨테이너의 3306번 포트를 호스트의 3306번 포트에 매핑한다.
MySQL 데이터 영구 저장 및 컨테이너 복구
컨테이너가 삭제되어도 데이터가 유지되도록 하려면 볼륨을 사용해야 한다.
docker run --name mysql-container -d -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 3306:3306 -v mysql_data:/var/lib/mysql mysql
설명:
- -v mysql_data:/var/lib/mysql : mysql_data라는 Docker 볼륨을 생성하여 MySQL 데이터 디렉터리(/var/lib/mysql)에 연결한다.
MySQL 컨테이너 삭제 후 복구
만약 기존 MySQL 컨테이너를 삭제하고 다시 실행해야 할 경우, 기존 데이터를 유지한 채로 새로운 컨테이너를 생성할 수 있다.
- 기존 컨테이너 중지 및 삭제
docker stop mysql-container
docker rm mysql-container
- 기존 볼륨을 활용하여 새로운 MySQL 컨테이너 생성
docker run --name mysql-container -d -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 3306:3306 -v mysql_data:/var/lib/mysql mysql
이제 이전에 저장된 데이터가 유지된 채로 MySQL 컨테이너가 다시 실행된다.
2. 실행 중인 컨테이너 확인 (docker ps)
- 현재 실행 중인 컨테이너 목록을 확인한다.
docker ps
- 만약 종료된 컨테이너까지 모두 확인하려면 -a 옵션을 추가한다.
docker ps -a
3. 컨테이너 중지 (docker stop)
- 실행 중인 컨테이너를 중지한다. 컨테이너 ID 또는 이름을 지정해야 한다.
docker stop <컨테이너_ID>
- 예를 들어, 컨테이너 ID가 abc123이라면 다음과 같이 실행한다.
docker stop abc123
4. 컨테이너 삭제 (docker rm)
- 중지된 컨테이너를 삭제한다.
docker rm <컨테이너_ID>
5. Docker 이미지 목록 확인 (docker images)
- 현재 다운로드된 Docker 이미지를 확인한다.
docker images
6. Docker 이미지 삭제 (docker rmi)
- 사용하지 않는 이미지를 삭제한다.
docker rmi <이미지_ID>
Docker 명령어 정리
주요 Docker 명령어를 정리해보자.
명령어 | 설명 |
docker run <이미지> | 새로운 컨테이너 실행 |
docker ps | 실행 중인 컨테이너 목록 확인 |
docker ps -a | 중지된 컨테이너 포함 모든 컨테이너 목록 확인 |
docker stop <컨테이너_ID> | 실행 중인 컨테이너 중지 |
docker rm <컨테이너_ID> | 중지된 컨테이너 삭제 |
docker images | 다운로드된 Docker 이미지 목록 확인 |
docker rmi <이미지_ID> | Docker 이미지 삭제 |
반응형