Docker 컨테이너를 중지하면 데이터가 손실되나요?
Docker 컨테이너를 중지하면 데이터가 손실되지 않습니다. 도커 컨테이너가 중지되고 종료되면 해당 컨테이너의 데이터는 손실되지 않으며 컨테이너가 삭제된 경우에만 "docker ps -a"를 통해 볼 수 있습니다. 컨테이너 삭제.
이 튜토리얼의 운영 환경: linux5.9.8 시스템, docker-1.13.1 버전, Dell G3 컴퓨터.
Docker 컨테이너를 중지하면 데이터가 손실되지 않습니다.
Docker 컨테이너가 중지되고 종료되면 종료 상태가 되며, 이는 가상 머신을 종료하는 것과 동일하므로 데이터 손실이 없습니다.
이때는 docker ps -a를 통해 볼 수 있고, docker start를 통해서도 시작할 수 있습니다. 컨테이너를 삭제해야만 데이터가 지워집니다.
docker rm 후에만 컨테이너를 삭제하면 데이터가 지워집니다.
컨테이너를 만든 다음 컨테이너를 삭제하면 데이터도 삭제됩니다.
데이터를 삭제하지 않고 컨테이너를 삭제하는 방법dockerrun-vhost_dir:containere_dir
이렇게 하면 문제가 해결될 수 있습니다!
추가 지식: 컨테이너를 다시 시작하면 컨테이너 실행 중에 생성된 로그 또는 데이터베이스 데이터가 지워집니다.
해결책:
Docker는 호스트 디스크 디렉터리를 마운트하여 데이터를 영구적으로 저장할 수 있습니다.
1. 컨테이너 생성 시 Docker 볼륨 실행
docker run 명령을 사용하여 Docker 컨테이너를 실행하고, ubuntu/nginx 이미지를 사용하고, 로컬 디렉터리 /tmp/source를 컨테이너 디렉터리 /tmp/destination
docker run -itd --volume /tmp/source:/tmp/destination --name test ubuntu/nginx bash
에 마운트합니다. ubuntu/를 기반으로 nginx 이미지는 Docker 컨테이너를 생성합니다.
––name 옵션으로 지정되는 테스트로 컨테이너 이름을 지정합니다.
Docker 볼륨은 ––volume(-v로 축약 가능) 옵션으로 지정됩니다. 호스트의 /tmp/source 디렉터리는 컨테이너의 /tmp/destination 디렉터리에 해당합니다.
2. Docker 볼륨 보기
docker Inspection 명령을 사용하여 Docker 컨테이너의 세부 정보를 확인하세요.
docker inspect --format=’{{json .Mounts}}'test | python -m json.tool[{“Destination”: “/tmp/destination”,“Mode”: “”,“Propagation”: “”,“RW”: true,“Source”: “/tmp/source”,“Type”: “bind”}]
필수 컨테이너 정보를 선택적으로 보려면 ––format 옵션을 사용하세요. .Mount는 컨테이너의 Docker 볼륨 정보입니다.
python -m json.tool은 출력 json 문자열의 형식을 지정하고 표시할 수 있습니다.
Source는 호스트의 디렉토리인 /tmp/source를 나타냅니다.
Destination은 컨테이너의 디렉터리(/tmp/destination)입니다.
3. 네이티브 파일을 컨테이너에 동기화할 수 있습니다
native/tmp/source 디렉터리에 새 hello.txt 파일을 만듭니다.
touch /tmp/source/hello.txtls /tmp/source/hello.txt
hello.txt 파일은 컨테이너/tmp/destination/디렉터리에 표시됩니다.
사용 docker exec 명령을 사용하면 컨테이너에서 명령을 실행할 수 있습니다.
docker exectest ls /tmp/destination/hello.txt
따라서 호스트의 /tmp/source/ 디렉터리에 대한 수정 사항은 컨테이너 디렉터리인 /tmp/destination/에 동기화될 수 있습니다.
4. 컨테이너 파일을 호스트에 동기화할 수 있습니다.
container/tmp/destination 디렉터리에 새 world.txt 파일을 만듭니다.
docker exec test touch /tmp/destination/world.txtdocker exec test ls /tmp/destination/hello.txtworld.txt
world.txt 파일은 호스트/tmp/source/ 디렉터리에 표시됩니다.
ls /tmp/source/hello.txt world.txt
추천 학습: "docker 비디오 튜토리얼"
위 내용은 Docker 컨테이너를 중지하면 데이터가 손실되나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Docker Desktop을 사용하는 방법? Docker Desktop은 로컬 머신에서 Docker 컨테이너를 실행하는 도구입니다. 사용 단계는 다음과 같습니다. 1. Docker Desktop 설치; 2. Docker Desktop을 시작하십시오. 3. Docker 이미지를 만듭니다 (Dockerfile 사용); 4. Docker Image 빌드 (Docker 빌드 사용); 5. 도커 컨테이너를 실행하십시오 (Docker Run 사용).

Docker 버전을 얻으려면 다음 단계를 수행 할 수 있습니다. Docker 명령 "Docker -version"을 실행하여 클라이언트 및 서버 버전을 볼 수 있습니다. Mac 또는 Windows의 경우 Docker Desktop GUI의 버전 탭 또는 Aff Docker Desktop 메뉴를 통해 버전 정보를 볼 수도 있습니다.

국내 거울 소스로 전환 할 수 있습니다. 단계는 다음과 같습니다. 1. 구성 파일 /etc/docker/daemon.json 편집 및 미러 소스 주소를 추가하십시오. 2. 저장 및 종료 후 Docker Service Sudo SystemCTL Docker를 다시 시작하여 이미지 다운로드 속도 및 안정성을 향상시킵니다.

Docker 이미지 생성 단계 : 빌드 지침이 포함 된 Dockerfile을 작성하십시오. Docker 빌드 명령을 사용하여 터미널에 이미지를 빌드하십시오. Docker 태그 명령을 사용하여 이미지를 태그하고 이름과 태그를 지정하십시오.

Docker 이미지를 업데이트하는 단계는 다음과 같습니다. 최신 이미지 태그 가져 오기 새 이미지 특정 태그의 이전 이미지 삭제 (선택 사항) 컨테이너를 다시 시작하십시오 (필요한 경우)

Docker에 이미지를 저장하려면 Docker Commit 명령을 사용하여 지정된 컨테이너의 현재 상태가 포함 된 새 이미지를 만들 수 있습니다. 구문 : Docker Commit [옵션] 컨테이너 ID 이미지 이름. 이미지를 저장소에 저장하려면 Docker Push 명령 인 Syntax : Docker 푸시 이미지 이름 [: tag]을 사용할 수 있습니다. 저장된 이미지를 가져 오려면 Docker Pull 명령 인 Syntax : Docker Pull Image Name [: Tag]을 사용할 수 있습니다.

Docker 명령을 실행하는 방법? Docker를 설치하고 데몬을 시작하십시오. 공통 docker 명령 : 디스플레이 이미지 Docker PS : 디스플레이 컨테이너 Docker Run : 컨테이너 컨테이너 Docker 정지 : 컨테이너 중지 Docker RM : Docker exec : Docker Exec : Docker Exec : 실행 명령 Docker Logs 첨부 : Display Log Docker Commit : DICKER STOP DOCKER DACON : Sudo SystemCTL Docker 로그 : Sudo SystemCTL STOP DOCKER COMMIN

단계를 따르면 Docker 컨테이너 이름을 쿼리 할 수 있습니다. 모든 컨테이너 (Docker PS)를 나열하십시오. 컨테이너 목록을 필터링합니다 (GREP 명령 사용). 컨테이너 이름 ( "이름"열에 위치)을 가져옵니다.
