docker - compose 해 혹
3938 단어 docker
내 가 이해 하기 로 는 docker - compose 는 사실 본질 적 으로 우리 가 셸 스 크 립 트 를 가지 고 용기 협력 을 하 는 것 과 같다.그러나 docker - compose 는 python 을 통 해 이 루어 졌 습 니 다. 이미 누군가가 이 스 크 립 트 를 작성 해 주 었 고 실행 가능 한 파일 docker - compose 로 컴 파일 되 었 습 니 다.우리 가 해 야 할 일 은 코드 를 쓰 던 일 을 Yml 프로필 을 쓰 는 일 로 바 꾸 는 것 입 니 다. 공동 실행 용기 에 필요 한 인자 (docker run 과 유사 한 인자) 를 docker - compose. ymal, 그리고 각 용기 가 시작 하 는 우선 순위, 네트워크 설정 등에 기입 하면 docker - compose up 을 통 해 이 용 기 를 시작 할 수 있 습 니 다. docker - compose down 을 통 해 용 기 를 정지 하고 삭제 합 니 다. docker-compose stop 용기 정지, restart 재 부팅 등.다음은 docker - compose 의 Yml 프로필 을 통 해 대체적으로 일상적으로 사용 하면 됩 니 다. 우 리 는 대부분의 기본 적 인 사용 을 배 워 야 한다. 만약 더 많은 기능 을 만 나 관련 문 서 를 조회 하면 된다. 문학 을 배 운 지 이렇게 오래 되 었 듯 이 사전 의 모든 글 자 를 배 운 것 은 아니다. 문 서 를 외 우 는 것 과 사전 을 외 우 는 것 은 본질 이 같다.사전 은 찾 는 것 이지 외 우 는 것 이 아니 기 때문이다.
docker - compose -- help 를 통 해 관련 명령 을 볼 수 있 습 니 다.docker 명령 과 차이 가 많 지 않 습 니 다. 모 르 는 것 을 보 러 가 는 것 도 어렵 지 않 습 니 다.주로 docker - compose. yaml 의 상용 매개 변수 설명 을 보십시오. 예 를 들 어 다음은 nginx + phop - fpm + my sql 의 예 입 니 다.
#docker-compose配置文件详情 官网文档
#https://docs.docker.com/compose/compose-file/#collapseSample1
# 常用配置文件分为2大部分 version 以及 services。 其实重点都是在services了
version: "3" # 版本信息 这个不能乱写。目前支持 1 2 3 详情参考文档,一般现在写3了吧
services:
nginx: # nginx容器服务名称
build:
context: ./ # 指明docker build在哪个目录上下文
dockefile: Dockerfile #指明Dockerfile名称 如果名称是Dockerfile 则可以忽略不写
image: my-nginx:1.0 # docker build -t my-nginx:1.0 . 镜像命名
args:
key: val # 向docker build传递参数 --build-agrs key=val
links: # 连接php-fpm服务
- php-fpm
volumes: # 挂载目录 类似 -v /data/:/container/data
- /data/:/container/data
php-fpm: # php-fpm服务名称
image: php
depends_on: # 依赖mysql-svc 首先mysql-svc先部署起来
- mysql-svc
ports:
- 8000
links:
- mysql-svc #网络连接到mysql-svc 类似 --link
command: ["tail","-f","/dev/null"] # 覆盖command命令
entrypoint: ["tail","-f","/dev/null"] # 覆盖entrypoint 类似 --entrypoint= "tail -f /dev/null"
mysql-svc: # mysql服务名称
image: mysql:5.6 # 指明镜像名称:版本
ports:
- "3306:3306" # 类似 docker run -p 3306:3306 端口映射
environment: # 类似 环境变量 docker run -e MYSQL_ROOT_PASSWORD=root
MYSQL_ROOT_PASSWORD: "root"
restart: always # 类似 docker run --restart=always 重启机制
dns: #类似 docker run --dns=8.8.8.8.8
- 8.8.8.8
- 114.114.114.114
제어 용기 의 시작 순서: 비록 우 리 는 depends 를 통 해on. 시작 의존 관 계 를 확인 하지만 시작 순서 만 보장 할 수 있 습 니 다. 먼저 시작 한 용기 가 '준비 상태' 에 있 는 지, 후속 용기 에 있 는 지 를 보장 할 수 없습니다. 따라서 도 구 는 정시/일정 시간 마다 의존 하 는 용기 가 준비 상태 에 있 는 지 확인 할 수 있 습 니 다. 예 를 들 어 몇 초 만 에 curl http 서비스 나 telnet 등 이 있 습 니 다. 유사 한 오픈 소스 도구 가 이미 존재 합 니 다. 예 를 들 어 wait-for-it.sh, dockerize, 등. 자세 한 내용 은 문서 참조: https://docs.docker.com/compose/startup-order/#title
한 마디 로 간단하게 요약 하면 평소에 용 기 를 어떻게 작 동 하 세 요? docker run -p 3306:3306 -v/data:/data ...등등 명령 은 docker - compose. yaml 파일 에 만 용 기 를 시작 하 는 명령 을 기록 합 니 다.해당 위 치 를 찾 아 키 를 만들어 쓰 면 됩 니 다.docker run 과 같은 포트 맵 을 사용 합 니 다. 하지만 docker - compose 에 서 는 ports 를 key 형식 으로 이 어 씁 니 다. -v. volumes 형식 으로 쓰 는 등등.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swarm의 도커 비밀이 게시물에서는 Redis를 사용한 실제 시나리오 예제를 제공하여 사용 방법을 보여주고자 합니다. Docker 기술에 대한 기본 지식 Docker Swarm 오케스트레이터에 대한 기본 지식 "Docker Swarm ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.