docker 학습 노트 2 dockerfile 사용자 정의 미 러 인식
Dockerfile 은 텍스트 파일 이지 만 빌 드 용기 가 실 행 될 때의 인자, 라 이브 러 리, 자원 설정 을 포함 합 니 다.Centos / Nginx 와 같은 기 존의 미 러 로 간단하게 이해 할 수 있 습 니 다. 그러나 우 리 는 용 기 를 구축 해 야 할 때 이 두 미 러 를 조합 해 야 합 니 다. 예 를 들 어 Nginx 용 기 를 구축 하 는 것 입 니 다.
이렇게 하면 용기 하나 가 만들어 지 는 것 이 아 닙 니까?이 용 기 는 독립 적 으로 운행 하 는 운영 체제 다.
거울 과 용기 의 관계
거울 이 움 직 이기 시작 하면 용기 가 된다.하나의 거울 은 여러 개의 용 기 를 생 성 할 수 있다.이것 은 마치 두 가지 상태 와 같다.
Dockerfile 형식
#
FROM centos:centos7
#
MAINTAINER mrc [email protected]
# RUN
RUN curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
RUN yum -y update
RUN yum install -y epel-release
RUN yum install -y nginx
#RUN echo 'hello world docker' >> /usr/share/nginx/html/index.html
#
CMD /usr/sbin/nginx
Dockerfile 파일 에 포 함 된 내용 은 이 네 부분 입 니 다.처음부터 기본 미 러 정 보 를 지정 해 야 합 니 다.관리자 정보이후 RUN 명령 을 통 해 미 러 조작 명령 을 실행 하여 기본 미 러 를 조작 합 니 다.
CMD 명령 은 사용자 가 용기 의 기본 실행 명령 을 지정 할 수 있 도록 합 니 다.이 명령 은 용기 가 시작 되 고 docker run 이 다른 명령 을 지정 하지 않 았 을 때 실 행 됩 니 다.
미 러 구축
방금 Dockerfile 파일 을 통 해 지정 한 미 러 파일 을 사용자 정의 하 였 습 니 다.이제 이 미 러 로 파일 을 만들어 서 사용자 정의 미 러 를 만 듭 니 다.
docker build
명령 은 현재 디 렉 터 리 Dockerfile 파일 과 컨 텍스트 에 따라 새로운 미 러 를 구축 합 니 다.컨 텍스트 는 현재 디 렉 터 리 나 git 창고 주 소 를 말 합 니 다.컨 텍스트 를 구축 하면 하위 디 렉 터 리 를 옮 겨 다 니 며 재 귀적 으로 처리 합 니 다.
.dockerignore
파일 을 통 해 컨 텍스트 디 렉 터 리 에 필요 하지 않 은 하위 디 렉 터 리 를 무시 할 수 있 습 니 다.보통 새 폴 더 아래 Dockerfile 파일 을 설치 하여 구축 합 니 다.
mkdir -p docker
cd docker
vi Dockerfile
##
FROM nginx
RUN echo 'Hello, Docker!' > /usr/share/nginx/html/index.html
# -t
docker build -t test:v1 .
실행 미 러
docker run --name docker_test -d -p 8080:80 test:v1
--name
는 운행 시의 이름 -d
백 스테이지 운행 -p
포트 맵 은 이 컴퓨터 8080 포트 를 nginx 80 포트 이 컴퓨터 IP + 8080 포트 에 접근
동적 수정
만약 내 가 이 용기 안의 내용 을 수정 하고 싶다 면?물론 대화 할 수 있 는 명령 줄 도 있 습 니 다.
docker exec -it docker_test bash
-i
연결 되 지 않 아 도 STDIN 켜 기 유지 -t
위 TTY bash
즉 명령 프로세서 용기 내용 변경 보기
docker diff xxx
용기 조작
###
docker container stop name
###
docker container start xxx
###
docker container restart xxx
레 퍼 런 스
https://www.cnblogs.com/ityouknow/p/8588725.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.