도커 컨테이너 상태 저장 방법
도커의 모든 것을 배우려고 하는데, 이미지를 저장할 수 있을지 혼란스럽습니다.
기본 Ubuntu 이미지를 실행하고 아나콘다 파이썬과 몇 가지 다른 것들을 설치했습니다.그럼 이제 내 진전을 구할 수 있는 가장 좋은 방법은 무엇입니까?저장, 커밋, 내보내기?
가상 시스템에 대한 분명한 저장 상태 파일을 제공하는 VirtualBox와 같은 방식으로 작동하는 것은 없습니다.
일반적인 방법은 적어도 컨테이너의 상태를 새 이미지로 고정하는 :를 통해 수행됩니다.
참고: 앤초비 전설에서 언급한 바와 같이, 이것은 최선의 방법이 아니며, 도커 파일을 사용하면 이미지 콘텐츠를 공식적으로 모델링하고 초기 상태를 재구성/재생산할 수 있습니다.
그런 다음 해당 이미지를 에 로컬로 나열하고 다시 실행할 수 있습니다.
예:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c3f279d17e0a ubuntu:12.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky
197387f1b436 ubuntu:12.04 /bin/bash 7 days ago Up 25 hours focused_hamilton
$ docker commit c3f279d17e0a svendowideit/testimage:version3
f5283438590d
$ docker images
REPOSITORY TAG ID CREATED SIZE
svendowideit/testimage version3 f5283438590d 16 seconds ago 335.7 MB
그런 다음 레지스트리 서버를 배포한 경우 이미지를 해당 서버에 푸시할 수 있습니다.
일반적인 방법은 최소한 도커 커밋을 통해 컨테이너 상태를 새 이미지로 고정하는 것입니다.
그러나 Hyper-V 또는 VMware의 가상 머신 저장 상태와 달리 컨테이너의 "상태를 저장"하는 신뢰할 수 있는 방법은 없습니다.이것은 도커의 단점이기도 합니다.
영구 파일 변경에 대한 변경 내용만 저장하는 것 같습니다.따라서 새 이미지에서 컨테이너를 다시 회전시키면 종속성과 실행된 모든 실행 명령이 동일한 영향을 미치지 않습니다.
그렇기 때문에 도커 파일을 변경하는 것이 이상적이며, 간단히 말해서 도커 시스템에는 가상 머신과 같은 저장 상태 기능이 없습니다.메모리 내용은 항상 손실됩니다.
다음을 사용하여 가능하지만 권장되지는 않습니다.docker commit
지휘권
다음과 같은 명확한 예를 확인할 수 있습니다.
https://phoenixnap.com/kb/how-to-commit-changes-to-docker-image
이러한 시나리오에는 도커 파일을 사용합니다.
MongoDB가 있는 Ubuntu 이미지의 예:
FROM ubuntu
MAINTAINER Author name
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
RUN echo "deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen" | tee -a /etc/apt/sources.list.d/10gen.list
RUN apt-get update
RUN apt-get -y install apt-utils
RUN apt-get -y install mongodb-10gen
#RUN echo "" >> /etc/mongodb.conf
CMD ["/usr/bin/mongod", "--config", "/etc/mongodb.conf"]
도커 파일 작성에 대한 모범 사례도 참조하십시오.
언급URL : https://stackoverflow.com/questions/44480740/how-to-save-a-docker-container-state
'programing' 카테고리의 다른 글
PowerShell의 유니언과 교차로? (0) | 2023.09.04 |
---|---|
PL/SQL에서 .exe를 어떻게 호출합니까? (0) | 2023.09.04 |
노드 js와 함께 DOMParser를 사용하려고 합니다. (0) | 2023.09.04 |
MariaDB 10.3.12에서 오라클 스타일 패키지 생성 (0) | 2023.08.30 |
Swift의 읽기 전용 및 계산되지 않은 변수 속성 (0) | 2023.08.30 |