<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Docker compose使用

      Docker Compose官方文檔:https://docs.docker.com/compose/

      一、Docker Compose安裝

      如果安裝使用Docker Desktop 默認就安裝了Docker Compose,

      docker Compose 安裝參考:

      http://www.rzrgm.cn/morang/p/devops-docker24-composev2-install.html

      https://blog.csdn.net/pushiqiang/article/details/78682323

      二、YAML入門

      docker Compose 的配置文件是使用YAML語言格式的

      https://www.runoob.com/w3cnote/yaml-intro.html

      https://zhuanlan.zhihu.com/p/145173920

      三、Docker Compose 配置文件 .yml 參考

      https://www.runoob.com/docker/docker-compose.html

      https://zhuanlan.zhihu.com/p/387840381

      簡單示例

      docker-compose.yml

      version: '3.5'
      # version 是必須指定的,而且總是位于文件的第一行。它定義了 Compose 文件格式(主要是 API)的版本。注意,version 并非定義 Docker Compose 或 Docker 引擎的版本號。
      networks:  #networks 用于指引 Docker 創建新的網絡。默認情況下,Docker Compose 會創建bridge網絡。 這是一種單主機網絡,只能夠實現同一主機上容器的連接。當然,也可以使用driver屬性來指定不同的網絡類型。
        ehub_frontend:     #自定義的網絡
          name: ehub_frontend
        ehub_storage:
          name: ehub_storage
      #volumes:  #volumes 用于指引 Docker 來創建新的卷。
        #data-elasticsearch:
        #data-mongo:
        #data-gateway-plugins-volume:
        #data-gateway-log-volume:
        #data-management-api-plugins-volume:
        #data-management-api-log-volume:
        #data-management-ui-log-volume:
        #data-portal-ui-log-volume:
      services: #services 用于定義不同的應用服務。工程的服務配置列表。Docker Compose 會將每個服務部署在各自的容器中
        #1、構建Gravitee.io 里APIM六個服務
        mongodb:                                                      #服務名,自定義
          #image: mongo:${MONGODB_VERSION:-3.6}                       指定啟動容器的鏡像,可以是鏡像倉庫/標簽或者鏡像id(或者id的前一部分)
          image: mongo:6                                              #指定為鏡像名稱或鏡像 ID。如果鏡像在本地不存在,Compose 將會嘗試拉取這個鏡像。
          container_name: ehub_gio_apim_mongodb                            #容器名
          restart: always                                             #是否隨docker服務啟動重啟
          volumes:                                                    #目錄掛載
            #- data-mongo:/data/db  #data-mongo填寫宿主機的目錄
            #- ./logs/apim-mongodb:/var/log/mongodb
            #- /f/home/ehub/gravitee/mongodb/data:/data/db
            - ./gravitee/mongodb/data:/data/db
          networks:                                                   #加入指定網絡
            - ehub_storage                                                 #自定義的網絡名
        elasticsearch:
          #image: docker.elastic.co/elasticsearch/elasticsearch:${ELASTIC_VERSION:-7.7.0}
          image: docker.elastic.co/elasticsearch/elasticsearch:8.8.1
          container_name: ehub_gio_apim_elasticsearch
          restart: always       #是否隨docker服務啟動重啟
          volumes:
            #- data-elasticsearch:/usr/share/elasticsearch/data  #data-elasticsearch填寫成自己宿主機的目錄
            #- data-elasticsearch:/var/lib/elasticsearch/data     # 命名卷
            #- /f/home/ehub/gravitee/elasticsearch/data:/var/lib/elasticsearch/data   #指定絕對路徑映射
            - ./gravitee/elasticsearch/data:/var/lib/elasticsearch/data
          environment:                                          #設置容器的環境變量
            - http.host=0.0.0.0
            - transport.host=0.0.0.0
            - xpack.security.enabled=false
            #- xpack.monitoring.enabled=false
            - cluster.name=elasticsearch
            - bootstrap.memory_lock=true
            - discovery.type=single-node
            - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
          #ulimits:        #ulimits指定容器的 ulimits 限制值。例如,指定最大進程數為 65535  nproc: 65535,指定文件句柄數為 20000(軟限制,應用可以隨時修改,不能超過硬限制) 和 40000(系統硬限制,只能 root 用戶提高)。
          #  memlock:
          #    soft: -1
          #    hard: -1
          #  nofile: 65536
          #  #nproc: 65535
          #  #nofile:
          #    #soft: 20000
          #    #hard: 40000
          networks:
            - ehub_storage
        gateway:
          #image: graviteeio/apim-gateway:${APIM_VERSION:-3}
          image: graviteeio/apim-gateway:4.0
          container_name: ehub_gio_apim_gateway
          restart: always     #restart指定容器退出后的重啟策略為始終重啟。該命令對保持服務始終運行十分有效,在生產環境中推薦配置為 always 或者 unless-stopped。
          ports:              #暴露端口信息。使用宿主端口:容器端口 (HOST:CONTAINER) 格式,或者僅僅指定容器的端口(宿主將會隨機選擇端口)都可以,端口字符串都使用引號包括起來的字符串格式。
            - "38082:8082"
          depends_on:   #解決容器的依賴、啟動先后的問題, 本服務啟動,依賴于mongodb和elasticsearch,也就是先啟動mongodb和elasticsearch再啟動gateway
            - mongodb
            - elasticsearch
          volumes:      #數據卷所掛載路徑設置。可以設置為宿主機路徑(HOST:CONTAINER)或者數據卷名稱(VOLUME:CONTAINER),并且可以設置訪問模式 (HOST:CONTAINER:ro)。
            #- ./logs/apim-gateway:/opt/graviteeio-gateway/logs      # 相對于當前compose文件的相對路徑
            #- data-gateway-plugins-volume:/opt/graviteeio-gateway/plugins-ext              # 命名卷
            #- data-gateway-log-volume:/opt/graviteeio-gateway/logs              # 命名卷
            #- /f/home/ehub/gravitee/apim-gateway/plugins:/opt/graviteeio-gateway/plugins-ext
            #- /f/home/ehub/gravitee/apim-gateway/logs:/opt/graviteeio-gateway/logs
            - ./gravitee/apim-gateway/plugins:/opt/graviteeio-gateway/plugins-ext
            - ./gravitee/apim-gateway/logs:/opt/graviteeio-gateway/logs
          environment:      #設置環境變量。你可以使用數組或字典兩種格式。
            #- gravitee_management_mongodb_uri=mongodb://mongodb:27017/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
            #- gravitee_ratelimit_mongodb_uri=mongodb://mongodb:27017/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
            #- gravitee_reporters_elasticsearch_endpoints_0=http://elasticsearch:9200
            #- gravitee_management_mongodb_uri="mongodb://ehub_gio_apim_mongodb:27017/gravitee-apim?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000"
            #- gravitee_ratelimit_mongodb_uri="mongodb://ehub_gio_apim_mongodb:27017/gravitee-apim?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000"
            - gravitee_management_mongodb_uri=mongodb://mongodb:27017/gravitee-apim?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
            - gravitee_ratelimit_mongodb_uri=mongodb://mongodb:27017/gravitee-apim?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
            - gravitee_reporters_elasticsearch_endpoints_0=http://elasticsearch:9200
            - gravitee_plugins_path_0=/opt/graviteeio-gateway/plugins
            - gravitee_plugins_path_1=/opt/graviteeio-gateway/plugins-ext
          networks:
            - ehub_storage
            - ehub_frontend
        management_api:
          #image: graviteeio/apim-management-api:${APIM_VERSION:-3}
          image: graviteeio/apim-management-api:4.0
          container_name: ehub_gio_apim_management_api
          restart: always
          ports:
            - "38083:8083"
          links:        # 鏈接到另一個服務中的容器。 請指定服務名稱和鏈接別名(SERVICE:ALIAS),或者僅指定服務名稱。  - db/- db:database
            - mongodb
            - elasticsearch
          depends_on:
            - mongodb
            - elasticsearch
          volumes:
            #- ./logs/apim-management-api:/opt/graviteeio-management-api/logs
            #- data-management-api-plugins-volume:/opt/graviteeio-management-api/plugins-ext              # 命名卷
            #- data-management-api-log-volume:/opt/graviteeio-management-api/logs              # 命名卷
            #- /f/home/ehub/gravitee/apim-management-api/plugins:/opt/graviteeio-management-api/plugins-ext
            #- /f/home/ehub/gravitee/apim-management-api/logs:/opt/graviteeio-management-api/logs
            - ./gravitee/apim-management-api/plugins:/opt/graviteeio-management-api/plugins-ext
            - ./gravitee/apim-management-api/logs:/opt/graviteeio-management-api/logs
          environment:
            #- gravitee_management_mongodb_uri=mongodb://mongodb:27017/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
            #- gravitee_analytics_elasticsearch_endpoints_0=http://elasticsearch:9200
            #- gravitee_management_mongodb_uri="mongodb://ehub_gio_apim_mongodb:27017/gravitee-apim?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000"
            - gravitee_management_mongodb_uri=mongodb://mongodb:27017/gravitee-apim?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
            - gravitee_analytics_elasticsearch_endpoints_0=http://elasticsearch:9200
            - gravitee_plugins_path_0=/opt/graviteeio-management-api/plugins
            - gravitee_plugins_path_1=/opt/graviteeio-management-api/plugins-ext
          networks:
            - ehub_storage
            - ehub_frontend
        management_ui:
          #image: graviteeio/apim-management-ui:${APIM_VERSION:-3}
          image: graviteeio/apim-management-ui:4.0
          container_name: ehub_gio_apim_management_ui
          restart: always
          ports:
            - "38084:8080"
          depends_on:
            - management_api
          environment:
            #- MGMT_API_URL=http://localhost:8083/management/organizations/DEFAULT/environments/DEFAULT/  #localhost改成自己服務器的IP地址
            - MGMT_API_URL=http://192.168.1.102:38083/management/organizations/DEFAULT/environments/DEFAULT
          volumes:
            #- ./logs/apim-management-ui:/var/log/nginx                # 相對于當前compose文件的相對路徑      
            #- data-management-ui-log-volume:/var/log/nginx                  # 命名卷
            #- /f/home/ehub/gravitee/apim-management-ui/logs:/var/log/nginx        # 指定絕對路徑映射
            - ./gravitee/apim-management-ui/logs:/var/log/nginx
          networks:
            - ehub_frontend
        portal_ui:
          #image: graviteeio/apim-portal-ui:${APIM_VERSION:-3}
          image: graviteeio/apim-portal-ui:4.0
          container_name: ehub_gio_apim_portal_ui
          restart: always
          ports:
            - "38085:8080"
          depends_on:
            - management_api
          environment:
            #- PORTAL_API_URL=http://localhost:8083/portal/environments/DEFAULT  #localhost改成自己服務器的IP地址
            - PORTAL_API_URL=http://192.168.1.102:38083/portal/environments/DEFAULT
          volumes:
            #- ./logs/apim-portal-ui:/var/log/nginx            # 相對于當前compose文件的相對路徑
            #- /gravitee/apim-portal-ui/logs:/var/log/nginx    # 指定絕對路徑映射
            #- data-portal-ui-log-volume:/var/log/nginx              # 命名卷
            #- /f/home/ehub/gravitee/apim-portal-ui/logs:/var/log/nginx    # 指定絕對路徑映射
            - ./gravitee/apim-portal-ui/logs:/var/log/nginx
          networks:
            - ehub_frontend
        #2、構建Hop兩個服務
        hop_web:
          image: apache/hop-web:latest  
          container_name: ehub_hop_web
          restart: always 
          ports:
            - "38086:8080"
          volumes:  
            #- /f/home/ehub/hop-web/config:/config/
            #- /f/home/ehub/hop-web/logs:/usr/local/tomcat/logs/
            #- /f/home/ehub/hop-web/plugins/databases/mysql/lib:/usr/local/tomcat/plugins/databases/mysql/lib/
            #- /f/home/ehub/hop-web/plugins/databases/mssql/lib:/usr/local/tomcat/plugins/databases/mssql/lib/
            #- /f/home/ehub/hop-web/plugins/databases/oracle/lib:/usr/local/tomcat/plugins/databases/oracle/lib/
            - ./hop-web/config:/config/
            - ./hop-web/logs:/usr/local/tomcat/logs/
            - ./hop-web/plugins/databases/mysql/lib:/usr/local/tomcat/plugins/databases/mysql/lib/
            - ./hop-web/plugins/databases/mssql/lib:/usr/local/tomcat/plugins/databases/mssql/lib/
            - ./hop-web/plugins/databases/oracle/lib:/usr/local/tomcat/plugins/databases/oracle/lib/
        hop_server:
          image: apache/hop:latest   # apache/hop:2.5.0   apache/hop:latest
          container_name: ehub_hop_server
          restart: always 
          ports:
            - "38087:8080"
          volumes:  
            #- /f/home/ehub/hop/hop.err.log:/opt/hop/hop.err.log/
            #- /f/home/ehub/hop/files:/files/
            - ./hop/hop.err.log:/opt/hop/hop.err.log/
            - ./hop/files:/files/
          environment:
            - HOP_SERVER_PORT=8080
            - HOP_SERVER_USER=admin
            - HOP_SERVER_PASS=admin
            - HOP_PROJECT_FOLDER=/files
            - HOP_SERVER_METADATA_FOLDER=/files/metadata
            - HOP_SHARED_JDBC_FOLDER=/files/jdbc
            - HOP_PROJECT_NAME=demoProject
            - HOP_ENVIRONMENT_NAME=Local
            - HOP_SERVER_MAX_OBJECT_TIMEOUT=14400000
        #3、構建Tresin系統管理服務
        tresin_system:
          #image: 192.168.1.153:5000/tresinbackendbase:ndri.lic.off 
          image: 192.168.1.153:5000/tresinbackendbase:2.15beta
          container_name: ehub_tresin_system
          restart: always 
          ports:
            - "38088:80"
          volumes:  
            #- /f/home/ehub/tresin-system/appsettings.json:/app/appsettings.json
            #- /f/home/ehub/tresin-system/Cert/id4svr.pfx:/app/Cert/id4svr.pfx
            #- /f/home/ehub/tresin-system/vault/:/home/vault
            #- /f/home/ehub/tresin-system/logs/:/app/logs
            - ./tresin-system/appsettings.json:/app/appsettings.json
            - ./tresin-system/Cert/id4svr.pfx:/app/Cert/id4svr.pfx
            - ./tresin-system/vault/:/home/vault
            - ./tresin-system/logs/:/app/logs
        #4、構建Camunda 7服務
        camunda:
          image: camunda-plugin-history:7.18
          container_name: ehub_camunda_plugin_history
          restart: always 
          ports:
            - "38089:8080"
          #links:
            #mysql:db
          volumes:  
            #- /f/home/ehub/camunda-plugin/default.yml:/camunda/configuration/default.yml
            - ./camunda-plugin/default.yml:/camunda/configuration/default.yml
          environment:
            #- file=/f/home/ehub/camunda-plugin/env.txt 
            - file=./camunda-plugin/env.txt
            #- /f/home/ehub/camunda-plugin/env.txt
          #env_file:  #相對路徑
            #- ./camunda-plugin/env.txt
        #5、構建LogerView服務
        logerview:
          image: 192.168.1.153:5000/tsdhlogviewer:0.4 
          container_name: ehub_logerview
          restart: always 
          depends_on:
            - camunda
          ports:
            - "38090:80"
          volumes:  
            #- /f/home/ehub/logviewer/appsettings.json:/app/appsettings.json
            #- /f/home/ehub/logviewer/logs/:/app/logs
            - ./logviewer/appsettings.json:/app/appsettings.json
            - ./logviewer/logs/:/app/logs
        #6、構建MQ服務
        rmqnamesrv:
          image: apache/rocketmq:5.1.3 
          container_name: ehub_rmqnamesrv
          restart: always 
          ports:
            - 9876:9876
          volumes:  
            #- /f/home/ehub/rocketmq/rmqnamesrv/logs:/home/rocketmq/logs
            - ./rocketmq/rmqnamesrv/logs:/home/rocketmq/logs
          environment:
            #- "MAX_POSSIBLE_HEAP=100000000"
            #- "JAVA_OPT_EXT=-Xms512M -Xmx512M -Xmn128m" 
            JAVA_OPT_EXT: "-Duser.home=/home/rocketmq -Xms512M -Xmx512M -Xmn128m"
          command: ["sh","mqnamesrv"]
        rocketmqbroker:
          image: apache/rocketmq:5.1.3 
          container_name: ehub_rocketmq_broker
          restart: always 
          links:
            - rmqnamesrv:namesrv
          ports:
            #- "10911:10911"
            #- "10912:10912"
            #- "10909:10909"
            - 10909:10909
            - 10911:10911
            - 10912:10912
          volumes:  
            #- /f/home/ehub/rocketmq/broker/logs:/home/rocketmq/logs
            #- /f/home/ehub/rocketmq/broker/store:/home/rocketmq/store
            #- /f/home/ehub/rocketmq/broker/broker.conf:/home/rocketmq/rocketmq-5.1.3/conf/broker.conf
            - ./rocketmq/broker/logs:/home/rocketmq/logs
            - ./rocketmq/broker/store:/home/rocketmq/store
            - ./rocketmq/broker/broker.conf:/home/rocketmq/rocketmq-5.1.3/conf/broker.conf
          environment:
            #- "NAMESRV_ADDR=namesrv:9876"
            #- "JAVA_OPT_EXT=-Xms512M -Xmx512M -Xmn128m"
            #- "MAX_POSSIBLE_HEAP=200000000"
            NAMESRV_ADDR: namesrv:9876
            JAVA_OPT_EXT: "-Duser.home=/home/rocketmq -Xms512M -Xmx512M -Xmn128m"
          #command: ["sh","mqbroker","-c","/home/rocketmq/rocketmq-4.9.4/conf/broker.conf"]
          command: ["sh","mqbroker","-c","../conf/broker.conf","autoCreateTopicEnable=true"]
        rocketmq-dashboard:
          #image: styletang/rocketmq-console-ng:latest 
          image: apacherocketmq/rocketmq-dashboard:latest
          container_name: ehub_rocketmq_dashboard   # ehub_rocketmq_console_ng
          restart: always 
          links:
            - rmqnamesrv:namesrv
          depends_on:
            - rmqnamesrv
          ports:
            - "38091:8080"
          environment: 
            #- "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.27.129:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"
            JAVA_OPTS: "-Drocketmq.namesrv.addr=namesrv:9876"
        #7、構建Nginx服務
        nginx:
          image: nginx:latest 
          container_name: ehub_nginx
          restart: always 
          ports:
            - "9001:80"
          volumes:  
            #- /f/home/ehub/nginx/conf/nginx.conf:/etc/nginx/nginx.conf 
            #- /f/home/ehub/nginx/conf/conf.d:/etc/nginx/conf.d 
            #- /f/home/ehub/nginx/log:/var/log/nginx 
            #- /f/home/ehub/nginx/html:/usr/share/nginx/html
            - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf 
            - ./nginx/conf/conf.d:/etc/nginx/conf.d 
            - ./nginx/log:/var/log/nginx 
            - ./nginx/html:/usr/share/nginx/html
      

      docker-compose.yml

      version: '1'
      services:
        mysql:
          container_name: mysql-crane
          restart: always
          image: mysql
          ports:
            - "13306:3306"
          volumes:
            - ./mysql/mydir:/mydir
            - ./mysql/datadir:/var/lib/mysql
          environment:
            - "MYSQL_ROOT_PASSWORD=root"
            - "MYSQL_DATABASE=root"
            - "TZ=Asia/Shanghai"
        gateway:
          image: 192.168.1.153:5000/tresinbackendgateway
          ports:
            - "15000:80"
          container_name: crane-gateway
          volumes:
            - "./gateway/configuration.json:/app/configuration.json"
        system:
          image: 192.168.1.153:5000/tresinbackendbase:crane
          container_name: crane-system
          ports:
            - "15001:80"
          depends_on:
            - gateway
            - mysql
          volumes:
            - "./system/appsettings.json:/app/appsettings.json"
            - "./system/Cert/id4svr.pfx:/app/Cert/id4svr.pfx"
            - "./system/vault/:/home/vault"
            - "./system/logs/:/app/logs"
        nginx:
          container_name: crane-nginx
          image: nginx
          ports:
            - "16001:80"
            - "16020:8080"
          volumes:
            - "./nginx/html:/usr/share/nginx/html"
            - "./nginx/conf.d/:/etc/nginx/conf.d/"
        crane:
          container_name: crane-back
          ports:
            - "15020:80"
          depends_on:
            - mysql
          image: 192.168.1.153:5000/ndricrane
          volumes:
            - "./crane/appsettings.json:/app/appsettings.json"
      
        # tdengine:
        #   container_name: tdengine
        #   image: tdengine/tdengine:2.4.0.26
        #   ports:
        #     - "6030-6049:6030-6049"
        #     - "6030-6049:6030-6049/udp"
        #   volumes:
        #     - ./taos:/etc/taos
      
      
      

      四、Docker Compose 常用命令

      注意

      #舊版使用 docker-compose 前綴
      #新版使用 docker compose 前綴
      
      # 運行容器 
      docker compose up 
      # 在后臺運行容器docker compose文件名稱是docker-compose.yml 
      docker compose up -d 
      # 指定yaml在后臺運行容器 
      docker compose -f docker-compose.prod.yaml up -d 
      # 查看日志 
      docker compose logs -f <service-name> 
      # 也可以直接使用容器ID查看容器日志 
      docker logs -f <container-id> 
      # 進入容器 
      docker attach <container-id> 不推薦,退出容器時,容器會停止 
      docker exec -it <container-id> /bin/bash 推薦使用 
      # 停止容器,并刪除相應的配置,推薦使用,如果使用docker stop并不會刪除容器的network和volume,使用下面的命令可以停止并刪除由docker compose文件定義的容器、網絡和卷 
      docker compose down
      

      幫助文檔

      docker compose --help
      
      docker@default:~$ docker-compose --help
      
      Define and run multi-container applications with Docker.
      
      Usage:
        docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]
        docker-compose -h|--help
      
      Options:
        -f, --file FILE             Specify an alternate compose file
                                    (default: 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 keys
                                    in v3 files to their non-Swarm equivalent
      
      Commands:
        build              構建或重建服務
        bundle             從compose配置文件中產生一個docker綁定
        config             驗證并查看compose配置文件
        create             創建服務
        down               停止并移除容器、網絡、鏡像和數據卷
        events             從容器中接收實時的事件
        exec               在一個運行中的容器上執行一個命令
        help               獲取命令的幫助信息
        images             列出所有鏡像
        kill               通過發送SIGKILL信號來停止指定服務的容器
        logs               從容器中查看服務日志輸出
        pause              暫停服務
        port               打印綁定的公共端口
        ps                 列出所有運行中的容器
        pull               拉取并下載指定服務鏡像
        push               Push service images
        restart            重啟YAML文件中定義的服務
        rm                 刪除指定已經停止服務的容器
        run                在一個服務上執行一條命令
        scale              設置指定服務運行容器的個數
        start              在容器中啟動指定服務
        stop               停止已運行的服務
        top                顯示各個服務容器內運行的進程
        unpause            恢復容器服務
        up                 創建并啟動容器
        version            顯示Docker-Compose版本信息
      

      命令解析

      docker-compose

      docker-compose [-f <args>...] [options] [COMMAND] [ARGS...]
      

      命令選項[-f <args>...]

      • -f, --file FILE 指定Compose模板文件,默認為docker-compose.yml可多次指定。
      $ docker-compose -f docker-compose.yml up -d
      
      • -p, --project-name NAME 指定項目名稱,默認使用當前所在目錄名稱作為項目名稱。
      • -x-network-driver 使用Docker可拔插網絡后端特性,需Docker1.9+版本支持。
      • -x-network-driver DRIVER 指定網絡后端驅動,默認為bridge,需Docker1.9+版本支持。
      • -verbose 輸出更多調試信息
      • -v, --version 打印版本并退出

      docker-compose up

      啟動所有服務

      docker-compose up [options] [--scale SERVICE=NUM...] [SERVICE...]
      

      命令選項[options]

      • -d 指定在后臺以守護進程方式運行服務容器
      • -no-color 設置不使用顏色來區分不同的服務器的控制輸出
      • -no-deps 設置不啟動服務所鏈接的容器
      • -force-recreate 設置強制重新創建容器,不能與--no-recreate選項同時使用。
      • --no-create 若容器已經存在則不再重新創建,不能與--force-recreate選項同時使用。
      • --no-build 設置不自動構建缺失的服務鏡像
      • --build 設置在啟動容器前構建服務鏡像
      • --abort-on-container-exit 若任何一個容器被停止則停止所有容器,不能與選項-d同時使用。
      • -t, --timeout TIMEOUT 設置停止容器時的超時秒數,默認為10秒。
      • --remove-orphans 設置刪除服務中沒有在compose文件中定義的容器
      • --scale SERVICE=NUM 設置服務運行容器的個數,此選項將會負載在compose中通過scale指定的參數。

      docker-compose ps

      列出項目中當前的所有容器

      docker-compose ps [options] [SERVICE...]
      
      docker@default:~$ docker-compose ps
      ERROR:
              Can't find a suitable configuration file in this directory or any
              parent. Are you in the right directory?
      
              Supported filenames: docker-compose.yml, docker-compose.yaml
      
      docker@default:~$ docker-compose ps
          Name         Command    State    Ports
      ------------------------------------------
      swoft_swoft_1   /bin/bash   Exit 0
      

      docker-compose -h

      查看docker-compose幫助

      docker-compose down

      停止和刪除容器、網絡、卷、鏡像

      docker-compose down [options]
      

      命令選項 [options]

      • --rmi type
        

        刪除鏡像類型,類型可選:

        • --rmi all 刪除compose文件中定義的所有鏡像
        • --rmi local 刪除鏡像名為空的鏡像
      • -v, --volumes 刪除已經在compose文件中定義的和匿名的附在容器上的數據卷

      • --remove-orphans 刪除服務中沒有在compose中定義的容器

      docker-compose logs

      查看服務容器的輸出,默認情況下docker-compose將對不同的服務輸出使用不同的顏色來區分。可以通過--no-color來關閉顏色。

      docker-compose logs [options] [SERVICE...]
      

      例如:

      root@default:/var/www/swoft# docker-compose logs
      Attaching to swoft_swoft_1
      swoft_1  | root@cd054651dfcb:/var/www/swoft# exit
      

      docker-compose build

      構建或重構項目中的服務容器,服務容器一旦構建后將會帶上一個標記名稱,可以隨時在項目目錄下運行docker-compose build來重新構建服務。

      docker-compose build [options] [--build-arg key=val...] [SERVICE...]
      

      命令選項[options]

      • --compress 通過gzip壓縮構建上下文環境
      • --force-rm 刪除構建過程中的臨時容器
      • --no-cache 構建鏡像過程中不使用緩存
      • --pull 始終嘗試通過拉取操作來獲取更新版本的鏡像
      • -m, --memory MEM為構建的容器設置內存大小
      • --build-arg key=val 為服務設置build-time變量

      docker-compose pull

      拉取服務依賴的鏡像

      docker-compose pull [options] [SERVICE...]
      

      命令選項[options]

      • --ignore-pull-failures 忽略拉取鏡像過程中的錯誤
      • --parallel 同時拉取多個鏡像
      • --quiet 拉取鏡像過程中不打印進度信息

      docker-compose restart

      重啟項目中的服務

      docker-compose restart [options] [SERVICE...]
      

      命令選項[options]

      • -t, --timeout TIMEOUT指定重啟前停止容器的超時時長,默認為10秒。

      docker-compose rm

      刪除所有停止狀態的服務容器,推薦先執行docker-compose stop命令來停止容器。

      docker-compose rm [options] [SERVICE...]
      

      命令選項[options]

      • -f, --force 強制直接刪除包含非停止狀態的容器
      • -v 刪除容器所掛載的數據卷

      docker-compose start

      啟動已經存在的服務容器

      docker-compose start [SERVICE...]
      

      docker-compose run

      在指定服務上執行一條命令

      docker-compose run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] SERVICE [COMMAND] [ARGS...]
      

      例如:在ubuntu容器上運行ping命令10次

      $ docker-compose run ubuntu ping www.baidu.com -c 10
      

      docker-compose scale

      設置指定服務運行的容器個數,通過service=num參數設置服務數量。

      docker-compose scale
      

      例如:

      $ docker-compoose scale web=3 db=2
      

      docker-compose pause

      暫停一個服務容器

      docker-compose pause [SERVICE...]
      

      docker-compose kill

      發送SIGKILL信號來強制停止服務容器,支持通過-s參數來指定發送的信號。

      docker-compose kill [options] [SERVICE...]
      

      例如:發送SIGINT信號強制停止服務容器

      $ docker-compose kill -s SIGINT
      

      docker-compose config

      驗證并查看compose文件配置

      docker-compose config [options]
      

      選項參數[options]

      • --resolve-image-digests 將鏡像標簽標記為摘要
      • -q, --quiet 只驗證配置不輸出,當配置正確時不輸出任何容器,當配置錯誤時輸出錯誤信息。
      • --services 打印服務名稱,一行顯示一個。
      • --volumes 打印數據卷名稱,一行顯示一個。

      例如:

      root@default:/var/www/swoft# docker-compose config
      services:
        swoft:
          entrypoint:
          - /bin/bash
          image: swoft/swoft:latest
          ports:
          - 83:83/tcp
          privileged: true
          stdin_open: true
          tty: true
          volumes:
          - /share/swoft:/var/www/swoft:rw
      version: '3.0'
      

      docker-compose create

      為服務創建容器

      docker-compose create [options] [SERVICE...]
      

      選項說明[options]

      • --force-recreate 重新創建容器,即使配置和鏡像沒有改變,不兼容--no-recreate參數。
      • --no-recreate 如果容器已經存在則無需重新創建,不兼容--force-recreate參數。
      • --no-build 不創建鏡像即使缺失
      • --build 創建容器前生成鏡像

      docker-compose exec

      docker-compose exec [options] SERVICE COMMAND [ARGS...]
      

      選項參數[options]

      • -d 分離模式,以后臺守護進程運行命令。
      • --privileged 獲取特權
      • -T 禁用分配TTY,默認docker-compose exec分配TTY。
      • --index=index 當一個服務擁有多個容器時可通過該參數登錄到該服務下的任何服務

      例如:

      $ docker-compose exec --index=1 web /bin/bash
      

      docker-compose port

      顯示某個容器端口所映射的公共端口

      docker-compose port [options] SERVICE PRIVATE_PORT
      

      選項參數[options]

      • --protocol=proto 指定端口協議,默認為TCP,可選UDP。
      • --index=index 若同意服務存在多個容器,指定命令對象容器的索引序號,默認為1。

      docker-compose push

      推送服務依賴的鏡像

      docker-compose push [options] [SERVICE...]
      

      選項參數[options]

      • --ignore-push-failure 忽略推送鏡像過程中的錯誤

      docker-compose stop

      顯示各個容器運行的進程情況

      docker-compose stop [options] [SERVICE...]
      

      docker-compose unpause

      恢復處于暫停狀態中的服務

      docker-compose unpause [SERVICE...]
      

      docker-compose version

      打印Docker Compose版本信息

      root@default:/var/www/swoft# docker-compose version
      docker-compose version 1.24.0, build 0aa59064
      docker-py version: 3.7.2
      CPython version: 3.6.8
      OpenSSL version: OpenSSL 1.1.0j  20 Nov 2018
      

      文檔參考:

      https://juejin.cn/post/7051057669896929288

      https://www.jianshu.com/p/c51d92a9f91d

      http://www.rzrgm.cn/morang/p/17976704/devops-docker-elk-install-nginx-config

      posted on 2024-02-20 10:57  青春似雨后霓虹  閱讀(797)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 亚洲欧洲久久激情久av| 久久国产成人午夜av影院| 亚洲精品成人福利网站| 精品国产成人亚洲午夜福利| 国产在线一区二区不卡| 亚洲人成色777777老人头| 午夜福利yw在线观看2020| 中文字幕一区二区久久综合| 精品久久久久久无码不卡 | 浴室人妻的情欲hd三级国产| 国产成人精品永久免费视频| 久久国产精品77777| 国产不卡精品视频男人的天堂| 国产精品人一区二区三区| 狠狠色狠狠综合久久| 国产中文字幕在线一区| 骚虎三级在线免费播放| 少妇久久久被弄到高潮| 在线精品视频一区二区| 成人一区二区不卡国产| 人妻色综合网站| 成人乱码一区二区三区四区| 中文文字幕文字幕亚洲色| 国产成人亚洲日韩欧美| 亚洲中文字幕亚洲中文精 | 精品九九人人做人人爱| 图片区小说区av区| 国产亚洲制服免视频| 熟女少妇精品一区二区| 亚洲精品中文字幕第一页| 中文国产不卡一区二区| 国产精品麻豆成人av网| 野外做受三级视频| 亚洲欧美一区二区三区在线| 亚洲av乱码一区二区| 大胆欧美熟妇xxbbwwbw高潮了| 亚洲最大日韩精品一区| 国产精品美女www爽爽爽视频| 国产一区二区内射最近更新 | 在线精品国精品国产尤物| 亚洲AV无码破坏版在线观看|