Docker Compose CLI(Compose 명령줄) 옵션 개요 및 도움말

13048 단어 docker
Docker Compose는 Docker 공식 편성(Orchestration) 프로젝트 중 하나로 집단에 분포식 응용을 신속하게 배치하는 것을 책임진다.
Dockerfile은 사용자가 별도의 응용 컨테이너를 관리할 수 있도록 합니다.Compose는 사용자가 하나의 템플릿(YAML 형식)에서 연결된 응용 용기 그룹(project, 즉 프로젝트라고 부른다)을 정의할 수 있도록 한다. 예를 들어 웹 서비스 용기에 백엔드 데이터베이스 서비스 용기 등이다.
1. 먼저 몇 가지 용어를 소개한다.
  • 서비스(서비스): 하나의 응용 용기로 실제적으로 여러 개의 같은 이미지를 실행할 수 있는 실례이다.
  • 프로젝트(project): 연결된 응용 용기로 구성된 완전한 업무 단원입니다.

  • 이를 통해 알 수 있듯이 하나의 프로젝트는 여러 서비스(용기)로 연결되고 Compose는 프로젝트를 대상으로 관리할 수 있다.2、docker-compose
    Compose의 경우 대부분의 명령의 대상은 프로젝트 자체일 수도 있고 프로젝트의 서비스나 용기로 지정할 수도 있다.특별한 설명이 없으면 명령 대상은 프로젝트가 됩니다. 이것은 프로젝트의 모든 서비스가 명령의 영향을 받는다는 것을 의미합니다.
    명령줄에서 docker-compose --help 을 실행할 수 있습니다.특정 명령의 사용 방식을 보려면 실행할 수 있습니다
    docker-compse command --help, up 명령의 사용 형식을 보려면 docker-compose up --help
    [root@iZbp13pwlxqwiu1xxb6szsZ ~]# docker-compose up --help
    Builds, (re)creates, starts, and attaches to containers for a service.
    
    Unless they are already running, this command also starts any linked services.
    
    The `docker-compose up` command aggregates the output of each container. When
    the command exits, all containers are stopped. Running `docker-compose up -d`
    starts the containers in the background and leaves them running.
    
    If there are existing containers for a service, and the service's configuration
    or image was changed after the container's creation, `docker-compose up` picks
    up the changes by stopping and recreating the containers (preserving mounted
    volumes). To prevent Compose from picking up changes, use the `--no-recreate`
    flag.
    
    If you want to force Compose to stop and recreate all containers, use the
    `--force-recreate` flag.
    
    Usage: up [options] [--scale SERVICE=NUM...] [SERVICE...]
    
    Options:
        -d, --detach               Detached mode: Run containers in the background,
                                   print new container names. Incompatible with
                                   --abort-on-container-exit.
        --no-color                 Produce monochrome output.
        --quiet-pull               Pull without printing progress information
        --no-deps                  Don't start linked services.
        --force-recreate           Recreate containers even if their configuration
                                   and image haven't changed.
        --always-recreate-deps     Recreate dependent containers.
                                   Incompatible with --no-recreate.
        --no-recreate              If containers already exist, don't recreate
                                   them. Incompatible with --force-recreate and -V.
        --no-build                 Don't build an image, even if it's missing.
        --no-start                 Don't start the services after creating them.
        --build                    Build images before starting containers.
        --abort-on-container-exit  Stops all containers if any container was
                                   stopped. Incompatible with -d.
        -t, --timeout TIMEOUT      Use this timeout in seconds for container
                                   shutdown when attached or when containers are
                                   already running. (default: 10)
        -V, --renew-anon-volumes   Recreate anonymous volumes instead of retrieving
                                   data from the previous containers.
        --remove-orphans           Remove containers for services not defined
                                   in the Compose file.
        --exit-code-from SERVICE   Return the exit code of the selected service
                                   container. Implies --abort-on-container-exit.
        --scale SERVICE=NUM        Scale SERVICE to NUM instances. Overrides the
                                   `scale` setting in the Compose file if present.
    [root@iZbp13pwlxqwiu1xxb6szsZ ~]# 

    다음은 docker-compose 명령 및 사용
    Define and run multi-container applications with Docker.
    
    Usage:
      docker-compose [-f ...] [options] [COMMAND] [ARGS...]
      docker-compose -h|--help
    
    Options:
      -f, --file FILE             Specify an alternate compose file
                                  (default: docker-compose.yml)
                                        Compose     ,    docker-compose.yml,      
      -p, --project-name NAME     Specify an alternate project name
                                  (default: directory name)
                                        ,                
      --verbose                   Show more output        
      --log-level LEVEL           Set log level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
      --no-ansi                   Do not print ANSI control characters
      -v, --version               Print version and exit       
      -H, --host HOST             Daemon socket to connect to
    
      --tls                       Use TLS; implied by --tlsverify
      --tlscacert CA_PATH         Trust certs signed only by this CA
      --tlscert CLIENT_CERT_PATH  Path to TLS certificate file
      --tlskey TLS_KEY_PATH       Path to TLS key file
      --tlsverify                 Use TLS and verify the remote
      --skip-hostname-check       Don't check the daemon's hostname against the
                                  name specified in the client certificate
      --project-directory PATH    Specify an alternate working directory
                                  (default: the path of the Compose file)
      --compatibility             If set, Compose will attempt to convert deploy
                                  keys in v3 files to their non-Swarm equivalent
    
    Commands:
      build              Build or rebuild services               
      bundle             Generate a Docker bundle from the Compose file
      config             Validate and view the Compose file
                            Compose         ,          ,           。
      create             Create services         
                         This command is deprecated. Use the `up` command with `--no-start` instead.        ,  up --no-start         
      down               Stop and remove containers, networks, images, and volumes
                                  up             ,  ,  ,   
                         (Stops containers and removes containers, networks, volumes, and images created by `up`.)
      events             Receive real time events from containers
      exec               Execute a command in a running container                 
      help               Get help on a command
      images             List images                
      kill               Kill containers      SIGKILL            。
      logs               View output from containers          
      pause              Pause services         
      port               Print the public port for a port binding                 
      ps                 List containers             
      pull               Pull service images          
      push               Push service images            Docker     
      restart            Restart services           
      rm                 Remove stopped containers
                                      。      docker-compose stop        。
      run                Run a one-off command
      scale              Set number of containers for a service              
      start              Start services              
      stop               Stop services              ,     。
      top                Display the running processes               
      unpause            Unpause services             
      up                 Create and start containers
                                  ,    /    ,    ,               。             ,          。
      version            Show the Docker-Compose version information

    너는 docker-compose를 통해 [-f...][options] [COMMAND] [ARGS...] docker 용기에 있는 여러 개의 서비스를 관리하고 관리하도록 명령합니다.
    3、Use  -f  to specify name and path of one or more Compose files
    Use the  -f  flag to specify the location of a Compose configuration file.
    -f 플래그를 사용하여 Compose 구성 파일의 위치를 지정합니다.
    3.1 Specifying multiple Compose files 여러 Compose 파일 지정
    You can supply multiple  -f  configuration files. When you supply multiple files, Compose combines them into a single configuration. Compose builds the configuration in the order you supply the files. Subsequent files override and add to their predecessors.
    여러 개의 - f 프로필을 제공할 수 있습니다.Compose는 여러 파일을 하나의 구성으로 그룹화합니다.Compose는 사용자가 제공한 파일 순서에 따라 구성을 구성합니다.후속 파일은 덮어쓰고 그 전신에 추가됩니다.
    For example, consider this command line:
    $ docker-compose -f docker-compose.yml -f docker-compose.admin.yml run backup_db
    

    The  docker-compose.yml  file might specify a  webapp  service.
    docker-compose.yml 파일이 웹 앱 서비스를 지정했습니다.
    webapp:
      image: examples/web
      ports:
        - "8000:8000"
      volumes:
        - "/data"
    

    If the  docker-compose.admin.yml  also specifies this same service, any matching fields override the previous file. New values, add to the  webapp  service configuration.
    docker-compose.admin.yml도 같은 서비스를 지정하면 일치하는 필드가 이전 파일을 덮어씁니다.새 값이 웹 앱 서비스 설정에 추가되었습니다.
    webapp:
      build: .
      environment:
        - DEBUG=1
    

    Use a  -f  with  -  (dash) as the filename to read the configuration from  stdin . When  stdin  is used all paths in the configuration are relative to the current working directory.
    대역-(대시)의 -f을 파일 이름으로 사용하여 stdin에서 구성을 읽습니다.stdin을 사용하면 구성의 모든 경로가 현재 작업 디렉토리에 상대적입니다.
    The  -f  flag is optional. If you don’t provide this flag on the command line, Compose traverses the working directory and its parent directories looking for a  docker-compose.yml  and a  docker-compose.override.yml  file. You must supply at least the  docker-compose.yml  file. If both files are present on the same directory level, Compose combines the two files into a single configuration.
    - f 로고는 선택할 수 있습니다.명령줄에 이 로고를 제공하지 않으면 Compose는 작업 디렉터리와 부모 디렉터리를 옮겨다니며 docker-compose를 찾습니다.yml 및 docker-compose.override.yml 파일.docker-compose를 최소한 제공해야 합니다.yml 파일.만약 두 파일이 모두 같은 디렉터리 단계에 있다면 Compose는 두 파일을 하나의 설정으로 통합할 것입니다.
    The configuration in the  docker-compose.override.yml  file is applied over and in addition to the values in the  docker-compose.yml  file.
    docker-compose 제외yml 파일의 값 외에 docker-compose도 적용됩니다.override.yml 파일의 구성입니다.
     
    3.2 Specifying a path to a single Compose file 단일 Compose 파일의 경로 지정
    You can use the  -f  flag to specify a path to a Compose file that is not located in the current directory, either from the command line or by setting up a COMPOSE_FILE environment variable in your shell or in an environment file.
    -f 플래그를 사용하여 명령줄을 통과하거나 셸 또는 환경 파일에 COMPOSE를 설정할 수 있습니다FILE 환경 변수를 사용하여 현재 디렉토리에 없는 Compose 파일의 경로를 지정합니다.
    For an example of using the  -f  option at the command line, suppose you are running the Compose Rails sample, and have a  docker-compose.yml  file in a directory called  sandbox/rails . You can use a command like docker-compose pull to get the postgres image for the  db  service from anywhere by using the  -f  flag as follows:  docker-compose -f ~/sandbox/rails/docker-compose.yml pull db
    Here’s the full example:
    $ docker-compose -f ~/sandbox/rails/docker-compose.yml pull db
    Pulling db (postgres:latest)...
    latest: Pulling from library/postgres
    ef0380f84d05: Pull complete
    50cf91dc1db8: Pull complete
    d3add4cd115c: Pull complete
    467830d8a616: Pull complete
    089b9db7dc57: Pull complete
    6fba0a36935c: Pull complete
    81ef0e73c953: Pull complete
    338a6c4894dc: Pull complete
    15853f32f67c: Pull complete
    044c83d92898: Pull complete
    17301519f133: Pull complete
    dcca70822752: Pull complete
    cecf11b8ccf3: Pull complete
    Digest: sha256:1364924c753d5ff7e2260cd34dc4ba05ebd40ee8193391220be0f9901d4e1651
    Status: Downloaded newer image for postgres:latest
    

    4, Use -p to specify a project name 사용-p 프로젝트 이름 지정
    Each configuration has a project name. If you supply a  -p  flag, you can specify a project name. If you don’t specify the flag, Compose uses the current directory name. See also the COMPOSE_PROJECT_NAME environment variable.
    각 구성에는 프로젝트 이름이 있습니다.-p 플래그를 제공하면 프로젝트 이름을 지정할 수 있습니다.플래그를 지정하지 않으면 Compose에서 현재 디렉토리 이름을 사용합니다.COMPOSE 참조PROJECT_NAME 환경 변수.
    5. Set up environment variables 설정 환경 변수
    You can set environment variables for various  docker-compose  options, including the  -f  and  -p  flags.
    -f와 -p 로고를 포함한 다양한 docker-compose 옵션에 환경 변수를 설정할 수 있습니다.
    For example, the COMPOSE_FILE environment variable relates to the  -f  flag, and COMPOSE_PROJECT_NAME environment variable relates to the  -p  flag.
    예를 들어, COMPOSEFILE 환경 변수는 -f 플래그와 연관되어 있으며, COMPOSEPROJECT_NAME 환경 변수는 -p 플래그와 연관됩니다.
    Also, you can set some of these variables in an environment file.

    좋은 웹페이지 즐겨찾기