2024년 1월 14일 일요일

Docker



동작중인 컨테이너 확인
docker ps

모든 컨테이너 확인
docker ps -a

컨테이너 모두 삭제
docker rm `docker ps -a -q`

컨테이너 삭제
docker rm [컨테이너id], [컨테이너id]

현재 이미지 확인
docker images

이미지 삭제
docker rmi [이미지id]

컨테이너를 삭제하기 전에 이미지를 삭제할 경우

-f 옵션을 붙이면 컨테이너도 강제삭제
docker rmi -f [이미지id]

Docker 컨테이너를 중지하는 방법은 다음과 같습니다:

  1. 명령 줄 또는 터미널을 엽니다.
  2. 현재 실행 중인 컨테이너의 세부 정보를 얻으려면 다음 명령을 입력합니다: docker ps
  3. 여러 컨테이너가 있는 경우, 중지하려는 컨테이너의 ID 또는 이름을 식별하고 복사합니다.
  4. Docker 컨테이너를 중지하려면 다음 구문을 사용합니다: docker stop <container_id>

여기서 <container_id>는 Docker 컨테이너의 ID입니다123. 이 명령을 실행하면 해당 ID의 컨테이너가 중지됩니다2. 이 방법으로 Docker 컨테이너를 중지할 수 있습니다.

참고로, Docker 컨테이너를 삭제하려면 먼저 컨테이너를 중지해야 합니다2. 그런 다음 docker rm <container_id> 명령을 사용하여 컨테이너를 삭제할 수 있습니다3. 이때 <container_id>는 삭제하려는 Docker 컨테이너의 ID입니다3.


두 개의 디렉토리를 맵핑하려면 -v 옵션을 두 번 사용하면 됩니다1. 예를 들어, 호스트의 /path/on/host1 디렉토리를 컨테이너의 /path/in/container1 디렉토리에, 그리고 호스트의 /path/on/host2 디렉토리를 컨테이너의 /path/in/container2 디렉토리에 맵핑하려면 다음과 같이 명령을 실행합니다:

docker run -v /path/on/host1:/path/in/container1 -v /path/on/host2:/path/in/container2 ...

이렇게 하면, 컨테이너 내부에서 /path/in/container1/path/in/container2 디렉토리를 통해 호스트의 /path/on/host1/path/on/host2 디렉토리에 접근할 수 있습니다1.

참고로, 이 방법은 Docker 컨테이너 사이에도 디렉토리를 공유하는 데 사용할 수 있습니다2. 이 경우, 한 컨테이너가 호스트의 디렉토리를 마운트하고, 다른 컨테이너가 그 디렉토리를 마운트하여 공유할 수 있습니다2.


docker run은 Docker에서 가장 중요하고 자주 사용되는 명령어 중 하나입니다123. 이 명령어는 Docker 이미지를 기반으로 새로운 컨테이너를 생성하고, 그 컨테이너에서 특정 명령을 실행합니다12453.

기본적인 형식은 다음과 같습니다2:

docker run (<옵션>) <이미지 식별자> (<명령어>) (<인자>)

여기서 <이미지 식별자>는 필수이며, 이미지 ID나 리파지토리(repository):태그(tag)를 사용할 수 있습니다2.

docker run에는 다양한 옵션들이 있습니다23. 주요 옵션들은 다음과 같습니다:

이러한 옵션들을 사용하여, Docker 컨테이너를 다양한 방식으로 실행할 수 있습니다23.


Docker 이미지를 다른 컴퓨터로 옮기는 방법은 다음과 같습니다:

  1. Docker 이미지를 tar 파일로 저장합니다:
docker save -o <tar 파일을 생성할 경로> <이미지 이름>
  1. 생성된 tar 파일을 원하는 방법(예: USB, 네트워크 공유 등)으로 대상 컴퓨터로 복사합니다12.
  2. 대상 컴퓨터에서 Docker 이미지를 로드합니다:
docker load -i <이미지 tar 파일의 경로>

위의 명령어에서 <tar 파일을 생성할 경로>는 tar 파일을 저장할 경로, <이미지 이름>은 Docker 이미지의 이름, <이미지 tar 파일의 경로>는 tar 파일의 경로를 나타냅니다12.

참고로, Docker 이미지의 이름 대신 이미지 ID를 사용할 수도 있지만, 이 경우 로드된 이미지가 태그를 유지하지 않으므로 이미지에 태그를 추가하는 추가 단계가 필요할 수 있습니다1. 이를 위해 docker tag 명령을 사용할 수 있습니다1.


Docker 컨테이너에 새 볼륨을 추가하려면 다음 단계를 따르십시오:

  1. Docker 컨테이너를 중지합니다:
docker stop <container_name>
  1. 필요한 경우 새 볼륨을 생성합니다:
docker volume create <volume_name>
  1. 업데이트된 실행 명령을 사용하여 컨테이너를 다시 실행합니다. 이때 --volume 플래그를 추가하여 소스 볼륨과 대상 위치를 설정합니다:
docker run -d --name <container_name> --volume <volume_name>:/path/in/container <image_name>

위의 명령어에서 <container_name>은 Docker 컨테이너의 이름, <volume_name>은 Docker 볼륨의 이름, /path/in/container는 컨테이너 내의 대상 경로, <image_name>은 Docker 이미지의 이름을 나타냅니다12.

참고로, Docker Compose를 사용하고 있다면, 볼륨 구성은 설정 파일을 통해 처리되므로 이 과정을 더 쉽게 자동화하고 추적할 수 있습니다1. 이 경우, docker-compose.yml 파일에 볼륨을 추가해야 합니다1. 그런 다음, Docker Compose의 서비스를 재시작할 수 있습니다1.


댓글 없음:

댓글 쓰기

우분투 NFS 설정

* 서버 설정 apt-get install nfs-common nfs-kernel-server rpcbind /etc/exports /home/xyz 192.168.0.X(rw,sync,no_root_squash,no_subtree_check)...