..."입니다."/> ..."입니다.">

 >  기사  >  운영 및 유지보수  >  Docker가 파일을 마운트할 수 있나요?

Docker가 파일을 마운트할 수 있나요?

WBOY
WBOY원래의
2022-07-08 15:23:566997검색

Docker는 파일을 마운트할 수 있습니다. 파일 마운트는 호스트의 지정된 파일을 docker 컨테이너의 파일에 마운트하는 것을 의미합니다. 파일 위치는 실행 명령을 사용하여 파일에 마운트할 수 있습니다. 컨테이너. 구문은 "docker run --name ..."입니다.

Docker가 파일을 마운트할 수 있나요?

이 튜토리얼의 운영 환경: linux7.3 시스템, docker 버전 19.03, Dell G3 컴퓨터.

Docker는 파일을 마운트할 수 있습니다

파일 마운트는 호스트의 지정된 파일을 Docker 컨테이너의 파일에 마운트하는 것입니다. 파일 위치는 사용자가 관리합니다

예를 들어

docker run --name <容器名> -p 80:80 -v <宿主机文件绝对路径:容器内文件绝对路径> -d <仓库名:版本标签>
# docker run --name nginx-contain -p 80:80 -v /docker_conf/nginx/html/index.html:/usr/share/nginx/html/index.html -d nginx
# 宿主机文件挂载到容器内文件

ps:

1. file will 덮어쓰기 컨테이너의 파일

확장 지식

Docker 마운트는 컨테이너의 파일이나 폴더를 로컬 파일이나 폴더로 덮어쓰는 것입니다.

기능:

데이터 전송을 실현하기 위해 cp 명령을 사용하는데 이는 더 번거롭습니다.

호스트와 컨테이너 디렉터리 간의 자동 양방향 데이터 동기화를 실현할 수 있는 컨테이너 디렉터리를 통해 마운트하고 쉽게 코드 업로드 및 구성 수정, 로그 동기화 및 기타 요구 사항을 구현합니다.

참고: docker가 구성 파일을 마운트할 때 마운트할 구성 파일의 내용을 잘못 작성하지 않도록 주의하세요. 그렇지 않으면 컨테이너가 생성된 후 시작되지 않습니다.

폴더 마운트

폴더에 있는 폴더 호스트는 확실히 컨테이너의 폴더를 덮어씁니다.

Docker가 파일을 마운트할 수 있나요?

존재하지 않는 폴더 또는 기존의 빈 폴더가 컨테이너에 마운트되도록 허용합니다. 컨테이너의 해당 폴더가 지워집니다.

컨테이너에 마운트된 비어 있지 않은 폴더 덮어쓰게 됩니다. 컨테이너에 있는 원본 폴더

파일 마운트

파일 마운트와 폴더 마운트의 가장 큰 차이점은 다음과 같습니다.

docker는 컨테이너에 이미 존재하는 파일을 마운트하기 위해 호스트에 없는 파일을 사용하는 것을 금지합니다.

파일 마운트는 동일한 폴더에 있는 다른 파일에 영향을 주지 않습니다.

기존 파일을 컨테이너에 마운트하면 해당 파일이 컨테이너에 덮어쓰여집니다. 파일이 없으면 생성됩니다

요약

호스트의 파일은 다음과 같아야 합니다. 컨테이너의 파일을 덮어씁니다

호스트 컨테이너 마운트 결과

존재하지 않는 파일 이미 존재하는 파일 금지된 동작

기존 파일 존재하지 않는 파일/이미 존재하는 파일 추가/덮어쓰기(디렉토리가 존재하지 않으면 디렉토리가 생성됩니다 )

응용 시나리오

위의 분석에서 폴더 마운트는 폴더 전체 단위로 파일을 포함하므로 많은 수의 파일을 마운트해야 할 때 사용할 수 있음을 알 수 있습니다 또한 빈 폴더가 마운트되거나 존재하지 않는 폴더인 경우 일반적으로 역방향 사용을 위해 사용됩니다. 즉, 컨테이너가 시작된 후 일부 파일(예: 로그)이 컨테이너의 폴더에 생성될 수 있습니다. 이때, 해당 호스트의 폴더에서 직접 볼 수 있습니다.

파일 마운트는 단일 파일만 덮어쓰며 컨테이너의 동일한 폴더에 있는 다른 파일에는 영향을 주지 않습니다. 런타임 시 기본 구성을 동적으로 수정하기 위해 구성 파일을 마운트하는 데 자주 사용됩니다.

추천 학습: "docker 비디오 튜토리얼"

위 내용은 Docker가 파일을 마운트할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.