Compose file version 3 reference #2 > 서버관리자

서버관리자

서버관리자 모임 게시판 입니다.

Compose file version 3 reference #2 정보

Compose file version 3 reference #2

본문

LONG SYNTAX

긴 형식 구문을 사용하면 짧은 형식으로 표현할 수 없는 추가 필드를 구성할 수 있습니다.

  • type: 마운트 유형 volume, bind, tmpfs 또는 npipe
  • source: 마운트 소스, 바인드 마운트를 위한 호스트의 경로 또는 [최상위 볼륨키](https://docs.docker.com/compose/compose-file /#volume-configuration-reference)에 정의된 볼륨 이름을 참조하십시오. tmpfs 마운트에는 적용되지 않습니다.
  • target: 볼륨이 마운트 된 컨테이너의 경로
  • read_only: 볼륨을 읽기 전용으로 설정하는 플래그
  • bind: 추가 바인드 옵션 구성
  • propagation: 블라인드에 사용되는 전파 모드
  • volume: 추가 볼륨 옵션 구성
  • nocopy: 볼륨을 만들 때 컨테이너에서 데이터를 복사하지 못하도록하는 플래그
  • tmpfs: 추가 tmpfs 옵션 구성
  • size: 바이트 단위의 tmpfs 마운트 크기
  • consistency: 마운트의 일관성 요구 사항, consistent(호스트와 컨테이너는 동일한보기를 가짐), cached(읽기 캐시, 호스트보기는 신뢰할 수 있음) 또는 delegated(읽기-쓰기 캐시, 컨테이너보기는 신뢰할 수 있음)
version: "3.7"
services:
  web:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - type: volume
        source: mydata
        target: /data
        volume:
          nocopy: true
      - type: bind
        source: ./static
        target: /opt/app/static

networks:
  webnet:

volumes:
  mydata:

참조: 긴 구문은 v3.2 의 새로운 기능

VOLUMES FOR SERVICES, SWARMS, AND STACK FILES

서비스, ​​ swarms 및 docker-stack.yml 파일로 작업 할 때 서비스를 지원하는 작업(컨테이너)은 swarm 의 모든 노드에 배포 할 수 있으며 서비스가 업데이트될 때마다 다른 노드 일 수 있습니다.

지정된 소스가 있는 명명된 볼륨이 없으면 Docker 는 서비스를 지원하는 각 작업에 대해 익명의 볼륨을 만듭니다. 연결된 컨테이너를 제거한 후에도 익명 볼륨이 유지되지 않습니다.

데이터를 유지하려면 이름이 지정된 볼륨과 멀티 호스트를 인식하는 볼륨 드라이버를 사용하여 모든 노드에서 데이터에 액세스할 수 있도록 하십시오. 또는 서비스가 볼륨이 있는 노드에 배치되도록 서비스에 대한 제한 조건을 설정하십시오.

예를 들어 Docker Labs의 votingapp 샘플에 대한 docker-stack.yml 파일은 postgres ' 데이터베이스를 실행하는 db라는 서비스를 정의합니다. swarm의 데이터를 유지하기 위해 명명된 볼륨으로 구성되며 manager` 노드에서만 실행되도록 제한됩니다. 해당 파일의 관련 내용은 다음과 같습니다.

version: "3.7"
services:
  db:
    image: postgres:9.4
    volumes:
      - db-data:/var/lib/postgresql/data
    networks:
      - backend
    deploy:
      placement:
        constraints: [node.role == manager]

CACHING OPTIONS FOR VOLUME MOUNTS (DOCKER DESKTOP FOR Mac)

17.06 CE Edge 및 Stable 을 포함한 Docker 17.04 CE Edge 이상에서는 작성 파일의 바인드 마운트 디렉토리에 대한 컨테이너 및 호스트 일관성 요구 사항을 구성하여 볼륨 마운트의 읽기/쓰기 성능을 향상시킬 수 있습니다. 이 옵션은 osxfs파일 공유와 관련된 문제를 해결하므로 Mac 용 Docker Desktop 에만 적용됩니다.

플래그는 다음과 같습니다.

  • consistent: 완전한 일관성. 컨테이너 런타임과 호스트는 항상 동일한 마운트보기를 유지합니다. 이것이 기본값입니다.

  • cached: T 마운트에 대한 호스트의 관점은 권위적입니다. 컨테이너에서 호스트의 업데이트가 표시되기까지 지연이있을 수 있습니다.

  • delegated: 컨테이너 런타임의 마운트보기는 신뢰할 수 있습니다. 컨테이너에서 작성된 업데이트가 호스트에 표시되기까지 지연이있을 수 있습니다.

다음은 볼륨을 `cached '로 구성하는 예입니다.

version: "3.7"
services:
  php:
    image: php:7.1-fpm
    ports:
      - "9000"
    volumes:
      - .:/var/www/project:cached

이 플래그들, 그것들이 해결하는 문제들, 그리고 그들의 도커 실행에 대한 자세한 내용은 [Docker Desktop for Mac 주제 볼륨 마운트 (공유 파일 시스템) 튜닝](https://docs.docker.com/docker- for-Mac / osxfs-caching/)에 있습니다.

domainname, hostname, ipc, Mac_address, privileged, read_only, shm_size, stdin_open, tty, user, working_dir

이들 각각은 docker run과 유사한 단일 값입니다. mac_address는 레거시 옵션입니다.

user: postgresql
working_dir: /code

domainname: foo.com
hostname: foo
ipc: host
mac_address: 02:42:ac:11:65:43

privileged: true


read_only: true
shm_size: 64M
stdin_open: true
tty: true

Specifying durations

checkintervaltimeout 하위 옵션과 같은 일부 구성 옵션은 기간을 문자열로 허용합니다. 다음과 같은 형식으로 :

2.5s
10s
1m30s
2h32m
5h34m56s

지원되는 단위는 us, ms, s, mh입니다.

Specifying byte values

buildshm_size 하위 옵션과 같은 일부 구성 옵션은 바이트 값을 문자열 형식으로 받아들입니다. 이것은 다음과 같습니다

2b
1024kb
2048k
300m
1gb

지원되는 단위는 b, k, mg 와 대체 표기법 kb, mbgb입니다. 현재 10 진수 값은 지원되지 않습니다.

Volume configuration reference

서비스 선언의 일부로 파일에 volumes를 선언할 수 있지만 이 섹션에서는 이름이없는 볼륨을 만들 수 있습니다 (volumes_from)에서 여러 서비스에서 재사용할 수 있으며 docker 명령 줄 또는 API 를 사용하여 쉽게 검색하고 검사할 수 있습니다. 자세한 내용은 docker volume 하위 명령 설명서를 참조하십시오.

볼륨에 대한 일반적인 정보는 볼륨 사용Volume Plugins를 참조하십시오.

다음은 데이터베이스의 데이터 디렉토리가 주기적으로 백업 할 수 있도록 볼륨과 같은 다른 서비스와 공유하는 두 개의 서비스 설정의 예입니다:

version: "3.7"

services:
  db:
    image: db
    volumes:
      - data-volume:/var/lib/db
  backup:
    image: backup-service
    volumes:
      - data-volume:/var/lib/backup/data

volumes:
  data-volume:

최상위 volumes키 아래의 항목은 비어있을 수 있으며, 이 경우 엔진에서 구성한 기본 드라이버 (대부분의 경우 local 드라이버)가 사용됩니다. 선택적으로 다음 키를 사용하여 구성할 수 있습니다.

driver

이 볼륨에 사용해야 할 볼륨 드라이버를 지정하십시오. Docker Engine 이 사용하도록 구성된 드라이버 (기본값은 대부분 local)입니다. 드라이버를 사용할 수 없으면 docker-compose up이 볼륨을 만들려고 할 때 엔진에서 오류를 반환합니다.

driver: foobar

driver_opts

이 볼륨의 드라이버에 전달할 옵션 목록을 키-값 쌍으로 지정하십시오. 이러한 옵션은 드라이버에 따라 다릅니다. 자세한 내용은 드라이버 설명서를 참조하십시오. 선택 과목.

volumes:
  example:
    driver_opts:
      type: "nfs"
      o: "addr=10.40.0.199,nolock,soft,rw"
      device: ":/docker/example"

external

true로 설정하면 이 볼륨이 작성 외부에서 작성되도록 지정합니다. docker-compose up은 그것을 만들려고 시도하지 않고 존재하지 않는 경우 오류를 발생시킵니다.

버전 3.3 이하의 형식에서는 external을 다른 볼륨 구성 키 (driver, driver_opts, labels)와 함께 사용할 수 없습니다. 버전 3.4 이상에서는 이 제한이 더 이상 존재하지 않습니다.

아래 예제에서, [projectname]_data라는 볼륨을 만들려고 시도하는 대신 Compose 는 단순히 data라는 기존 볼륨을 찾아서 db 서비스 컨테이너에 마운트합니다.

version: "3.7"

services:
  db:
    image: postgres
    volumes:
      - data:/var/lib/postgresql/data

volumes:
  data:
    external: true

external.name은 버전 3.4 파일 형식에서 더 이상 사용되지 않습니다 대신 name을 사용하십시오.

작성 파일에서 볼륨을 참조하는 데 사용된 이름과 별도로 볼륨 이름을 지정할 수도 있습니다.

volumes:
  data:
    external:
      name: actual-name-of-volume

외부 볼륨은 항상 docker stack deploy 로 생성됩니다

존재하지 않는 외부 볼륨은 docker compose up 대신 swarm mode에서 docker stack deploy를 사용하여 앱을 시작하면 생성됩니다. 스웜 모드에서는 서비스가 볼륨을 정의 할 때 볼륨이 자동으로 생성됩니다. 서비스 작업이 새 노드에서 예약되면 swarmkit은 로컬 노드에 볼륨을 만듭니다. 자세한 내용은 moby/moby#29976를 참조하십시오.

labels

Docker labels를 사용하여 컨테이너에 메타 데이터를 추가하십시오. 배열이나 사전을 사용할 수 있습니다.

레이블이 다른 소프트웨어에서 사용되는 레이블과 충돌하지 않도록 역 DNS 표기법을 사용하는 것이 좋습니다.

labels:
  com.example.description: "Database volume"
  com.example.department: "IT/Ops"
  com.example.label-with-empty-value: ""

labels:
  - "com.example.description=Database volume"
  - "com.example.department=IT/Ops"
  - "com.example.label-with-empty-value"

name

버전 3.4 파일 형식으로 추가

이 볼륨의 사용자 정의 이름을 설정하십시오. 이름 필드는 특수 문자가 포함된 볼륨을 참조하는 데 사용할 수 있습니다. 이름은 그대로 사용되며 스택 이름으로 범위가 지정되지 않습니다.

version: "3.7"
volumes:
  data:
    name: my-app-data

external 속성과 함께 사용할 수도 있습니다:

version: "3.7"
volumes:
  data:
    external: true
    name: my-app-data

Network configuration reference

최상위 networks키를 사용하면 생성 할 네트워크를 지정할 수 있습니다.

driver

이 네트워크에 사용할 드라이버를 지정하십시오.

기본 드라이버는 사용중인 Docker Engine 의 구성 방식에 따라 다르지만 대부분의 경우 단일 호스트에서 bridge이고 Swarm 에서 overlay입니다.

드라이버를 사용할 수없는 경우 Docker 엔진이 오류를 반환합니다.

driver: overlay

BRIDGE

Docker 는 기본적으로 단일 호스트에서 bridge네트워크를 사용합니다. 브리지 네트워크로 작업하는 방법에 대한 예는 Bridge 네트워킹의 Docker Labs 자습서를 참조하십시오.

OVERLAY

overlay 드라이버는 swarm의 여러 노드에 걸쳐 명명된 네트워크를 만듭니다.

HOST OR NONE

호스트의 네트워킹 스택을 사용하거나 네트워킹을 사용하지 않습니다. docker run --net=host 또는docker run --net=none과 같습니다. docker stack 명령을 사용하는 경우에만 사용됩니다. docker-compose 명령을 사용하는 경우 network_mode를 대신 사용하십시오.

공통 빌드에서 특정 네트워크를 사용하려면 두 번째 YAML 파일 예제에서 언급 한대로 [network]를 사용하십시오.

hostnone과 같은 내장 네트워크를 사용하는 구문은 약간 다릅니다. 이름이 host 또는 none인 외부 네트워크를 정의하십시오 (Docker 는 이미 자동으로 작성 됨) 그리고 Compose 가 사용할 수 있는 별명 (다음 예에서hostnet 또는 nonet)을 선택한 다음 별명을 사용하여 해당 네트워크에 대한 서비스 액세스 권한을 부여하십시오.

version: "3.7"
services:
  web:
    networks:
      hostnet: {}

networks:
  hostnet:
    external: true
    name: host

services:
  web:
    ...
    build:
      ...
      network: host
      context: .
      ...

services:
  web:
    ...
    networks:
      nonet: {}

networks:
  nonet:
    external: true
    name: none

driver_opts

이 네트워크의 드라이버로 전달할 옵션 목록을 키-값 쌍으로 지정하십시오. 이러한 옵션은 드라이버에 따라 다릅니다. 자세한 내용은 드라이버 설명서를 참조하십시오. 선택 과목.

driver_opts:
  foo: "bar"
  baz: 1

attachable

참조: v3.2 이상에서만 지원됩니다.

driveroverlay로 설정된 경우에만 사용됩니다. true로 설정하면 독립형 컨테이너가 서비스 외에 이 네트워크에 연결될 수 있습니다. 독립형 컨테이너가 오버레이 네트워크에 연결된 경우 다른 Docker 데몬에서 오버레이 네트워크에 연결된 서비스 및 독립형 컨테이너와 통신할 수 있습니다.

networks:
  mynet1:
    driver: overlay
    attachable: true

enable_ipv6

이 네트워크에서 IPv6 네트워킹을 활성화하십시오.

Compose File 버전 3 에서는 지원되지 않습니다.

enable_ipv6에서는 Swarm 모드에서 이 지시어가 아직 지원되지 않으므로 버전 2 Compose 파일을 사용해야합니다.

ipam

사용자 지정 IPAM 구성을 지정하십시오. 이것은 여러 속성을 가진 객체이며 각각은 선택 사항입니다.

  • driver: 기본값 대신 사용자 지정 IPAM 드라이버.
  • config: 각각 다음 키 중 하나를 포함하는 0 개 이상의 구성 블록이있는 목록:
    • subnet: 네트워크 세그먼트를 나타내는 CIDR 형식의 서브넷

전체 예:

ipam:
  driver: default
  config:
    - subnet: 172.28.0.0/16

참조: gateway와 같은 추가 IPAM 구성은 현재 버전 2 에만 적용됩니다.

internal

Docker 는 기본적으로 브리지 네트워크를 연결하여 외부 연결을 제공합니다. 외부 적으로 고립된 오버레이 네트워크를 만들려면이 옵션을 true로 설정할 수 있습니다.

labels

Docker labels를 사용하여 컨테이너에 메타 데이터를 추가하십시오. 배열이나 사전을 사용할 수 있습니다.

레이블이 다른 소프트웨어에서 사용되는 레이블과 충돌하지 않도록 역 DNS 표기법을 사용하는 것이 좋습니다.

labels:
  com.example.description: "Financial transaction network"
  com.example.department: "Finance"
  com.example.label-with-empty-value: ""

labels:
  - "com.example.description=Financial transaction network"
  - "com.example.department=Finance"
  - "com.example.label-with-empty-value"

external

true로 설정하면 이 네트워크가 작성 외부에서 작성되도록 지정합니다. docker-compose up은 그것을 만들려고 시도하지 않고 존재하지 않는 경우 오류를 발생시킵니다.

버전 3.3 이하의 형식에서는 external을 다른 네트워크 구성 키 (driver, driver_opts, ipam, internal)와 함께 사용할 수 없습니다. 버전 3.4 이상에서는 이 제한이 더 이상 존재하지 않습니다.

아래 예에서 proxy는 외부 세계로 가는 관문입니다. Compose 는 [projectname]_outside라는 네트워크를 만들지 않고 단순히 outside라는 기존 네트워크를 찾아 proxy 서비스의 컨테이너를 연결합니다.

version: "3.7"

services:
  proxy:
    build: ./proxy
    networks:
      - outside
      - default
  app:
    build: ./app
    networks:
      - default

networks:
  outside:
    external: true

[external.name 은 버전 3.5 파일 형식에서 더 이상 사용되지 않습니다] (https://docs.docker.com/compose/compose-file/compose-versioning/#version-35) 대신name을 사용하십시오.

작성 파일에서 네트워크를 참조하는 데 사용되는 이름과 별도로 네트워크 이름을 지정할 수도 있습니다.

version: "3.7"
networks:
  outside:
    external:
      name: actual-name-of-network

name

버전 3.5 파일 형식으로 추가

이 네트워크의 사용자 정의 이름을 설정하십시오. 이름 필드는 특수 문자가 포함된 네트워크를 참조하는 데 사용할 수 있습니다. 이름은 그대로 사용되며 스택 이름으로 범위가 지정되지 않습니다.

version: "3.7"
networks:
  network1:
    name: my-app-net

external 속성과 함께 사용할 수도 있습니다:

version: "3.7"
networks:
  network1:
    external: true
    name: my-app-net

configs configuration reference

최상위 configs 선언은 이 스택의 서비스에 부여 할 수있는 configs를 정의하거나 참조합니다. 설정의 소스는 file 또는 external입니다.

  • file: 지정된 경로에 파일 내용으로 구성이 작성됩니다.
  • external: true 로 설정하면이 구성이 이미 작성되었음을 지정합니다. Docker 는 그것을 만들려고 시도하지 않으며 존재하지 않으면 'config not found'오류가 발생합니다.
  • name: Docker 의 구성 객체 이름입니다. 이 필드는 특수 문자가 포함 된 구성을 참조하는 데 사용할 수 있습니다. 이름은 그대로 사용되며 스택 이름으로 범위가 지정되지 않습니다. 버전 3.5 파일 형식으로 도입되었습니다.

이 예에서 스택이 배포되면 my_first_config가 생성됩니다.(_my_first_config와 같이)
그리고 my_second_config는 Docker 에 이미 존재합니다.

configs:
  my_first_config:
    file: ./config_data
  my_second_config:
    external: true

외부 구성의 또 다른 변형은 Docker 의 구성 이름이 서비스 내에 존재하는 이름과 다른 경우입니다. 다음 예제는 이전 설정을 수정하여 redis_config라는 외부 설정을 사용합니다.

configs:
  my_first_config:
    file: ./config_data
  my_second_config:
    external:
      name: redis_config

여전히 스택의 각 서비스에 구성에 대한 액세스 권한 부여가 필요합니다.

secrets configuration reference

최상위 secrets선언은 이 스택의 서비스에 부여 할 수있는 secrets를 정의하거나 참조합니다. 비밀의 근원은 file또는 external입니다.

  • file: 비밀은 지정된 경로에 파일 내용으로 작성됩니다.
  • external: true 로 설정하면이 비밀이 이미 작성되었음을 지정합니다. 도커는 그것을 만들려고 시도하지 않으며 존재하지 않으면 secret not found오류가 발생합니다.
  • name: Docker 의 비밀 객체 이름입니다. 이 필드는 특수 문자가 포함된 비밀을 참조하는 데 사용할 수 있습니다. 이름은 그대로 사용되며 스택 이름으로 범위가 지정되지 않습니다. 버전 3.5 파일 형식으로 도입되었습니다.

이 예제에서 my_first_secret_my_first_secret로 생성되며 스택이 배치되고 my_second_secret은 Docker 에 이미 존재합니다.

secrets:
  my_first_secret:
    file: ./secret_data
  my_second_secret:
    external: true

외부 비밀의 또 다른 변형은 Docker 의 비밀 이름이 서비스 내에 존재하는 이름과 다른 경우입니다. 다음 예제는 redis_secret이라는 외부 암호를 사용하도록 이전 암호를 수정합니다.

Compose File v3.5 and above

secrets:
  my_first_secret:
    file: ./secret_data
  my_second_secret:
    external: true
    name: redis_secret

Compose File v3.4 and under

  my_second_secret:
    external:
      name: redis_secret

여전히 스택의 각 서비스에 비밀 액세스 권한 부여이 필요합니다.

Variable substitution

구성 옵션에는 환경 변수가 포함될 수 있습니다. Compose 는 docker-compose 가 실행되는 쉘 환경의 변수 값을 사용합니다. 예를 들어, 쉘에 POSTGRES_VERSION=9.3 이 있고 이 구성을 제공한다고 가정하십시오.

db:
  image: "postgres:${POSTGRES_VERSION}"

구성 옵션에는 환경 변수가 포함될 수 있습니다. Compose 는 docker-compose가 실행되는 쉘 환경의 변수 값을 사용합니다. 예를 들어, 쉘에 POSTGRES_VERSION=이 구성으로 docker-compose up을 실행하면 Compose는 쉘에서POSTGRES_VERSION환경 변수를 찾아 그 값을 대체합니다. 이 예에서 Compose는 실행하기 전에imagepostgres:9.3'으로 분석합니다.

구성.환경 변수가 설정되지 않은 경우 작성은 빈 문자열로 대체됩니다. 위의 예에서 POSTGRES_VERSION이 설정되어 있지 않으면 image 옵션의 값은 postgres:입니다.

작성이 자동으로 찾는 [.env 파일] (https://docs.docker.com/compose/env-file/)을 사용하여 환경 변수의 기본값을 설정할 수 있습니다. 쉘 환경에서 설정된 값은 .env 파일에서 설정된 값보다 우선합니다.9.3` 이 있고 이 구성을 제공한다고 가정하십시오.

중요: .env 파일기능은 docker-compose up 명령을 사용할 때만 작동하며 docker stack deploy에서는 작동하지 않습니다.

$VARIABLE${VARIABLE}구문이 모두 지원됩니다. 또한 2.1 파일 형식을 사용하는 경우 일반적인 쉘 구문을 사용하여 인라인 기본값을 제공 할 수 있습니다.

${VARIABLE:-default}는 환경에서 VARIABLE이 설정되어 있지 않거나 비어 있으면 default로 평가됩니다.
${VARIABLE-default}는 환경에서 VARIABLE이 설정되지 않은 경우에만 default로 평가됩니다.

마찬가지로 다음 구문을 통해 필수 변수를 지정할 수 있습니다.

${VARIABLE:?err}는 환경에서 VARIABLE이 설정되어 있지 않거나 비어 있으면 err를 포함하는 오류 메시지와 함께 종료됩니다.
${VARIABLE?err}는 환경에서 VARIABLE이 설정되어 있지 않으면 err를 포함하는 오류 메시지와 함께 종료됩니다.

${VARIABLE/foo/bar}와 같은 다른 확장 쉘 스타일 기능은 지원되지 않습니다.

구성에 리터럴 달러 기호가 필요한 경우 $$(이중 달러 기호)를 사용할 수 있습니다. 이것은 또한 Compose 가 값을 보간하는 것을 막기 때문에 $$를 사용하면 Compose 에서 처리하고 싶지 않은 환경 변수를 참조 할 수 있습니다.

web:
  build: .
  command: "$$VAR_NOT_INTERPOLATED_BY_COMPOSE"

단일 달러 기호 ($)를 잊어 버린 경우 Compose 는 값을 환경 변수로 해석하고 다음을 경고합니다.

VAR_NOT_INTERPOLATED_BY_COMPOSE 가 설정되지 않았습니다. 빈 문자열을 대체합니다.

Extension fields

버전 3.4 파일 형식으로 추가.

확장 필드를 사용하여 구성 조각을 재사용 할 수 있습니다. 이러한 특수 필드는 작성 파일의 루트에 있고 이름이 x- 문자 시퀀스로 시작하는 한 어떤 형식이든 가능합니다.

참조

3.7 형식 (3.x 시리즈의 경우) 및 2.4 형식 (2.x 시리즈의 경우)부터 확장 필드는 서비스의 루트, 볼륨, 네트워크, 구성 및 비밀 정의에서도 허용됩니다.

version: '3.4'
x-custom:
  items:
    - a
    - b
  options:
    max-size: '12m'
  name: "custom"

해당 필드의 내용은 Compose 에서 무시되지만 YAML 앵커를 사용하여 리소스 정의에 삽입할 수 있습니다. 예를 들어 여러 서비스에서 동일한 로깅 구성을 사용하려는 경우 :

logging:
  options:
    max-size: '12m'
    max-file: '5'
  driver: json-file

다음과 같이 작성 파일을 작성할 수 있습니다.

version: '3.4'
x-logging:
  &default-logging
  options:
    max-size: '12m'
    max-file: '5'
  driver: json-file

services:
  web:
    image: myapp/web:latest
    logging: *default-logging
  db:
    image: mysql:latest
    logging: *default-logging

YAML 병합 유형을 사용하여 확장 필드의 값을 부분적으로 무시할 수도 있습니다. 예를 들면 다음과 같습니다.

version: '3.4'
x-volumes:
  &default-volume
  driver: foobar-storage

services:
  web:
    image: myapp/web:latest
    volumes: ["vol1", "vol2", "vol3"]
volumes:
  vol1: *default-volume
  vol2:
    << : *default-volume
    name: volume02
  vol3:
    << : *default-volume
    driver: default
    name: volume-local

Compose documentation

공감
0

댓글 0개

전체 637 |RSS
서버관리자 내용 검색

회원로그인

진행중 포인트경매

  1. 참여53 회 시작24.04.19 15:40 종료24.04.26 15:40
(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT