Alfresco Content Services dockerCompose自动化部署详尽操作

发布于:2025-02-10 ⋅ 阅读:(62) ⋅ 点赞:(0)

Alfresco Content Services docker社区部署文档

Alfresco Content Services简介

官方说明书

https://support.hyland.com/r/Alfresco/Alfresco-Content-Services-Community-Edition/23.4/Alfresco-Content-Services-Community-Edition/Using/Content/Folder-rules/Defining-rules-for-a-folder/Creating-a-simple-workflow

Alfresco Content Services(简称ACS)是一款功能完备的企业内容管理(ECM)解决方案,主要面向那些对企业级内容管理有高要求的组织。具体如下:

  1. 核心优势:具备企业级的可扩展性、高性能,用于管理企业关键业务内容并确保合规性。这意味着企业在业务规模不断扩大、内容数据量持续增长的情况下,Alfresco Content Services能稳定高效运行,同时时刻满足企业在数据安全、法规遵循等方面的要求。
  2. 主要用途:可应用于多种场景。包括内容和治理服务,帮助企业管理内容的整个生命周期,从创建、存储到最终删除,确保符合法规和企业内部政策;支持上下文搜索和洞察,用户能基于内容的上下文关系进行精准搜索,挖掘有价值的信息;还能轻松与其他应用集成,打破信息孤岛,提升企业整体业务流程的连贯性和效率。
  3. 关键能力:围绕内容管理提供丰富的功能。在文档管理方面,实现文档的存储、版本控制、权限设置等基础操作;支持文档扫描和捕获,便于将纸质文档转化为数字化信息纳入管理体系;企业协作功能促进团队成员间的协同工作,共同处理和编辑文档;信息治理保障企业信息资产的安全合规;智能分析和洞察则通过对内容的深入挖掘,为企业决策提供数据支持。

Alfresco Content Services是一款功能强大的企业内容管理系统,以下是其官方简介:

  • 功能全面
    • 企业级内容管理:为企业提供了全面的文档管理功能,可实现对大量文件和文档的高效存储、共享、版本控制等操作,满足企业对业务关键内容的管理需求,确保内容的安全性和合规性。
    • 智能流程管理:紧密集成流程与内容服务功能,能够简化以内容为中心的业务流程,让企业在处理文档等内容时,流程更加顺畅,从而支持更快、更明智的决策制定。
    • 企业协作功能:可与Microsoft 365和Google Docs等无缝集成,为团队提供强大的企业协作工具,让团队成员能在不同平台上协同工作,提高工作效率。
    • 信息治理:Alfresco Governance Services能够自动管理信息生命周期,减少用户干预,降低企业业务风险,增强合规性,确保企业信息资产的安全和有序管理。
    • 智能分析:能够自动提取内容中的有价值信息,对内容和元数据进行自动丰富,为企业提供关键洞察,帮助企业更好地理解和利用其内容资产。
  • 技术优势
    • 基于开放标准和API:以开放标准和API为基础构建,易于与其他系统集成和定制,能轻松满足不同企业的多样化业务需求,可与企业现有的IT架构进行无缝对接。
    • 容器化与微服务架构:采用容器化与微服务架构,借助Docker确保应用的轻量化与可移植性,通过Kubernetes或Docker Compose进行编排,增强了系统的弹性和可扩展性,方便在不同环境中部署和运行。
  • 应用场景广泛
    • 云部署:能在公有云或私有云中快速搭建内容管理系统,灵活应对云环境下的弹性资源需求,帮助企业充分利用云的优势进行内容管理。
    • 开发与测试环境:为开发团队提供了快速搭建一致性环境的能力,有助于加速软件开发生命周期,提高开发和测试效率。
    • 多环境部署管理:在不同的测试、预生产、生产环境中,能够高效同步配置,减少人工错误,确保各个环境的稳定性和一致性。
https://docs.alfresco.com/content-services   #官网

https://github.com/Alfresco/acs-deployment.git   #github

在这里插入图片描述
在这里插入图片描述

前提条件

操作系统:unbuntu22.04

在开始之前,需要确保已经安装了 Docker 和 Docker Compose。Docker 用于创建和管理容器,Docker Compose 则用于定义和运行多容器的 Docker 应用。
在这里插入图片描述
在这里插入图片描述
测试验证之前把所有的之前的docker容器关掉或者删除,要不然会有端口冲突!

1. 创建目录结构

首先,创建一个目录来存放相关的配置文件和数据,例如:

mkdir alfresco-docker
cd alfresco-docker

2. 创建 docker-compose.yml 文件

在 alfresco-docker 目录下创建一个 docker-compose.yml 文件,以下是一个基本的示例配置:

# This docker-compose.yml file is used to spin up an Alfresco Content Services (ACS) trial cluster on a local host or on a server and it requires a minimum of 16GB Memory to distribute among containers.

# To use this file to create a local installation of Alfresco Content Services, you need to have Docker Compose installed [https://docs.docker.com/compose/install/].
# Navigate to the folder where this file is located, and issue the following commands:
#
#     docker login quay.io -u="alfresco+acs_v6_trial" -p="MDF9RNGUJPKZ83KK8UVGUVWO9AYKUZ0VN6WG5VOOCUT6BX19JJLU5ZL0HKU7N20C"
#     docker-compose up
#

# For additional information about using this docker-compose file, please see:
# https://github.com/Alfresco/acs-deployment/blob/master/docs/docker-compose-deployment.md

# You may wish to limit container memory and assign a certain percentage to JVM. There are couple of ways to allocate JVM Memory for ACS Containers
# For example: 'JAVA_OPTS: "$JAVA_OPTS -XX:+PrintFlagsFinal -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap"'
# If container memory is not explicitly set, then the above flags will default max heap to 1/4th of container's memory.
version: "2"
services:
    alfresco:
        image: quay.io/alfresco/alfresco-content-repository:23.2.1
        mem_limit: 1900m
        environment:
            JAVA_TOOL_OPTIONS: -Dencryption.keystore.type=JCEKS -Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding -Dencryption.keyAlgorithm=DESede -Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore -Dmetadata-keystore.password=mp6yc0UD9e -Dmetadata-keystore.aliases=metadata -Dmetadata-keystore.metadata.password=oKIWzVdEdA -Dmetadata-keystore.metadata.algorithm=DESede
            JAVA_OPTS: "-Ddb.driver=org.postgresql.Driver
                -Ddb.username=alfresco
                -Ddb.password=alfresco
                -Ddb.url=jdbc:postgresql://postgres:5432/alfresco
                -Dindex.subsystem.name=elasticsearch
                -Delasticsearch.createIndexIfNotExists=true
                -Delasticsearch.host=elasticsearch
                -Delasticsearch.port=9200
                -Dshare.host=127.0.0.1
                -Dshare.port=8080
                -Dalfresco.host=localhost
                -Dalfresco.port=8080
                -Dcsrf.filter.enabled=false
                -Daos.baseUrlOverwrite=http://localhost:8080/alfresco/aos
                -Dmessaging.broker.url=\"failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true\"
                -Ddeployment.method=DOCKER_COMPOSE
                -Dtransform.service.enabled=true
                -Dtransform.service.url=http://transform-router:8095
                -Dsfs.url=http://shared-file-store:8099/
                -DlocalTransform.core-aio.url=http://transform-core-aio:8090/
                -Ddsync.service.uris=http://localhost:9090/alfresco
                -DtrialUid=id10718692
                -XX:MinRAMPercentage=50
                -XX:MaxRAMPercentage=80"
        healthcheck:
            test:
                - CMD
                - curl
                - -f
                - http://localhost:8080/alfresco/api/-default-/public/alfresco/versions/1/probes/-ready-
            interval: 30s
            timeout: 3s
            retries: 3
            start_period: 1m
    transform-router:
        mem_limit: 512m
        image: quay.io/alfresco/alfresco-transform-router:4.1.2
        environment:
            JAVA_OPTS: -XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
            ACTIVEMQ_URL: nio://activemq:61616
            CORE_AIO_URL: http://transform-core-aio:8090
            FILE_STORE_URL: http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file
        ports:
            - "8095:8095"
        depends_on:
            - activemq
    transform-core-aio:
        image: alfresco/alfresco-transform-core-aio:5.1.2
        mem_limit: 1536m
        environment:
            JAVA_OPTS: -XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
            ACTIVEMQ_URL: nio://activemq:61616
            FILE_STORE_URL: http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file
        ports:
            - "8090:8090"
        depends_on:
            - activemq
    shared-file-store:
        image: quay.io/alfresco/alfresco-shared-file-store:4.1.2
        mem_limit: 512m
        environment:
            JAVA_OPTS: -XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
            scheduler.content.age.millis: 86400000
            scheduler.cleanup.interval: 86400000
        ports:
            - "8099:8099"
        volumes:
            - shared-file-store-volume:/tmp/Alfresco/sfs
    share:
        image: quay.io/alfresco/alfresco-share:23.2.1
        mem_limit: 1g
        environment:
            REPO_HOST: "alfresco"
            REPO_PORT: "8080"
            JAVA_OPTS: -XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80 -Dalfresco.host=localhost -Dalfresco.port=8080 -Dalfresco.context=alfresco -Dalfresco.protocol=http
    postgres:
        image: postgres:14.4
        mem_limit: 512m
        environment:
            - POSTGRES_PASSWORD=alfresco
            - POSTGRES_USER=alfresco
            - POSTGRES_DB=alfresco
        command: postgres -c max_connections=300 -c log_min_messages=LOG
        ports:
            - "5432:5432"
    elasticsearch:
        image: elasticsearch:7.10.1
        environment:
            - xpack.security.enabled=false
            - discovery.type=single-node
        ulimits:
            memlock:
                soft: -1
                hard: -1
            nofile:
                soft: 65536
                hard: 65536
        cap_add:
            - IPC_LOCK
        ports:
            - 9200:9200
            - 9300:9300
    search:
        image: quay.io/alfresco/alfresco-elasticsearch-live-indexing:4.0.1
        mem_limit: 1g
        depends_on:
            elasticsearch:
                condition: service_started
            search-reindexing:
                condition: service_completed_successfully
        environment:
            ALFRESCO_ACCEPTED_CONTENT_MEDIA_TYPES_CACHE_BASE_URL: http://transform-core-aio:8090/transform/config
            ALFRESCO_SHAREDFILESTORE_BASEURL: http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file/
            SPRING_ACTIVEMQ_BROKERURL: nio://activemq:61616
            SPRING_ELASTICSEARCH_REST_URIS: http://elasticsearch:9200
    search-reindexing:
        image: quay.io/alfresco/alfresco-elasticsearch-reindexing:4.0.1
        mem_limit: 1g
        restart: on-failure:10
        environment:
            ALFRESCO_ACCEPTED_CONTENT_MEDIA_TYPES_CACHE_BASE_URL: http://transform-core-aio:8090/transform/config
            SPRING_ACTIVEMQ_BROKERURL: nio://activemq:61616
            SPRING_DATASOURCE_URL: jdbc:postgresql://postgres:5432/alfresco
            SPRING_DATASOURCE_USERNAME: alfresco
            SPRING_DATASOURCE_PASSWORD: alfresco
            SPRING_ELASTICSEARCH_REST_URIS: http://elasticsearch:9200
        depends_on:
            postgres:
                condition: service_started
            elasticsearch:
                condition: service_started
            alfresco:
                condition: service_healthy
    activemq:
        image: alfresco/alfresco-activemq:5.18-jre17-rockylinux8
        mem_limit: 1g
        ports:
            - "8161:8161" # Web Console
            - "5672:5672" # AMQP
            - "61616:61616" # OpenWire
            - "61613:61613" # STOMP
    digital-workspace:
        image: quay.io/alfresco/alfresco-digital-workspace:4.4.1
        mem_limit: 128m
        environment:
            APP_CONFIG_PROVIDER: "ECM"
            APP_CONFIG_AUTH_TYPE: "BASIC"
            BASE_PATH: ./
            APP_CONFIG_PLUGIN_PROCESS_SERVICE: "false"
            APP_CONFIG_PLUGIN_MICROSOFT_ONLINE: "false"
            APP_BASE_SHARE_URL: "http://localhost:8080/workspace/#/preview/s"
    control-center:
        image: quay.io/alfresco/alfresco-control-center:8.4.1
        mem_limit: 128m
        environment:
            APP_CONFIG_PROVIDER: "ECM"
            APP_CONFIG_AUTH_TYPE: "BASIC"
            BASE_PATH: ./
    proxy:
        image: alfresco/alfresco-acs-nginx:3.4.2
        mem_limit: 128m
        depends_on:
            - alfresco
            - digital-workspace
            - control-center
            - share
        ports:
            - "8080:8080"
    sync-service:
        image: quay.io/alfresco/service-sync:4.0.1
        mem_limit: 1g
        environment:
            JAVA_OPTS: -Dsql.db.driver=org.postgresql.Driver -Dsql.db.url=jdbc:postgresql://postgres:5432/alfresco -Dsql.db.username=alfresco -Dsql.db.password=alfresco -Dmessaging.broker.host=activemq -Drepo.hostname=alfresco -Drepo.port=8080 -Ddw.server.applicationConnectors[0].type=http -XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
        ports:
            - "9090:9090"
volumes:
    shared-file-store-volume:
        driver_opts:
            type: tmpfs
            device: tmpfs

将localhost替换你服务器的IP

3. 启动容器

在 docker-compose.yml 文件所在的目录下,运行以下命令启动容器:
执行构建命令

docker-compose up -d

解释:
docker-compose up 命令用于启动由 docker-compose.yml 文件定义的所有服务。
-d 参数表示在后台运行容器。
4. 验证部署
启动容器后,可以通过访问 http://localhost:8080/alfresco 来验证 Alfresco Content Services 是否成功部署。首次访问时,需要进行一些初始设置,例如创建管理员账户等。
5. 停止和删除容器
如果需要停止和删除容器,可以使用以下命令:
这个命令是集体删除容器,慎用。

docker-compose down

解释:
docker-compose down 命令会停止并删除由 docker-compose.yml 文件定义的所有服务及其相关的网络和卷(如果使用了 --volumes 参数)。

注意事项
配置调整:根据实际需求,可以调整 docker-compose.yml 文件中的配置,例如更改端口映射、环境变量等。

在这里插入图片描述

docker ps -a

在这里插入图片描述

笔者是用unbuntu桌面版访问localhost,如果是部署在没有桌面的服务器,在构建之前先把localhost替换成服务器IP!
在这里插入图片描述
在这里插入图片描述
admin admin

在这里插入图片描述

将192.168.10.180替换成你的IP!然后访问http://192.168.10.180:8080/share/ admin admin

# This Docker Compose file will spin up an ACS community installation on a local host.
# It requires at least 6GB of memory available to distribute among containers.
#
# For performance tuning, increase each container mem_limit and give a percentage of
# it to the JVM. Use either the -Xms,-Xmx flags or the newly added flags in
# java 10+: -XX:MaxRAMPercentage and -XX:MinRAMPercentage.
# More details here:
# https://www.oracle.com/technetwork/java/javase/10-relnote-issues-4108729.html
#
services:
  alfresco:
    image: docker.io/alfresco/alfresco-content-repository-community:23.4.0
    mem_limit: 1900m
    environment:
      JAVA_TOOL_OPTIONS: >-
        -Dencryption.keystore.type=JCEKS
        -Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding
        -Dencryption.keyAlgorithm=DESede
        -Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore
        -Dmetadata-keystore.password=mp6yc0UD9e
        -Dmetadata-keystore.aliases=metadata
        -Dmetadata-keystore.metadata.password=oKIWzVdEdA
        -Dmetadata-keystore.metadata.algorithm=DESede
      JAVA_OPTS: >-
        -Ddb.driver=org.postgresql.Driver
        -Ddb.username=alfresco
        -Ddb.password=alfresco
        -Ddb.url=jdbc:postgresql://postgres:5432/alfresco
        -Dsolr.host=solr6
        -Dsolr.port=8983
        -Dsolr.http.connection.timeout=1000
        -Dsolr.secureComms=secret
        -Dsolr.sharedSecret=secret
        -Dsolr.base.url=/solr
        -Dindex.subsystem.name=solr6
        -Dshare.host=localhost
        -Dshare.port=8080
        -Dalfresco.host=localhost
        -Dalfresco.port=8080
        -Dcsrf.filter.enabled=false
        -Daos.baseUrlOverwrite=http://192.168.10.180:8080/alfresco/aos
        -Dmessaging.broker.url="failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true"
        -Ddeployment.method=DOCKER_COMPOSE
        -DlocalTransform.core-aio.url=http://192.168.10.180:8090/
        -XX:MinRAMPercentage=50
        -XX:MaxRAMPercentage=80
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/alfresco/api/-default-/public/alfresco/versions/1/probes/-ready-"]
      interval: 30s
      timeout: 3s
      retries: 5
      start_period: 1m
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.alfresco.rule=PathPrefix(`/`)"
      - "traefik.http.services.alfresco.loadbalancer.server.port=8080"
      - "traefik.http.routers.solrapideny.rule=PathRegexp(`^/alfresco/(wc)?s(ervice)?/api/solr/.*$`)"
      - "traefik.http.middlewares.acsfakeauth.basicauth.users=fake:"
      - "traefik.http.routers.solrapideny.middlewares=acsfakeauth@docker"
  transform-core-aio:
    image: alfresco/alfresco-transform-core-aio:5.1.5
    mem_limit: 1536m
    environment:
      JAVA_OPTS: >-
        -XX:MinRAMPercentage=50
        -XX:MaxRAMPercentage=80
    ports:
      - "8090:8090"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8090/ready"]
      interval: 20s
      timeout: 2s
      retries: 3
      start_period: 10s
    depends_on:
      activemq:
        condition: service_healthy
  share:
    image: docker.io/alfresco/alfresco-share:23.4.0
    mem_limit: 1g
    environment:
      CSRF_FILTER_ORIGIN: http://192.168.10.180:8080
      CSRF_FILTER_REFERER: http://192.168.10.180:8080/share/.*
      REPO_HOST: "alfresco"
      REPO_PORT: "8080"
      JAVA_OPTS: >-
        -XX:MinRAMPercentage=50
        -XX:MaxRAMPercentage=80
        -Dalfresco.host=localhost
        -Dalfresco.port=8080
        -Dalfresco.context=alfresco
        -Dalfresco.protocol=http
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/share"]
      interval: 20s
      timeout: 2s
      retries: 3
      start_period: 15s
    depends_on:
      alfresco:
        condition: service_healthy
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.share.rule=PathPrefix(`/share`)"
      - "traefik.http.services.share.loadbalancer.server.port=8080"
      - "traefik.http.routers.proxiedsolrapideny.rule=PathRegexp(`^/share/proxy/alfresco(-(noauth|feed|api))?/api/solr/`)"
      - "traefik.http.middlewares.sharefakeauth.basicauth.users=fake:"
      - "traefik.http.routers.proxiedsolrapideny.middlewares=sharefakeauth@docker"
  postgres:
    image: postgres:13
    mem_limit: 512m
    environment:
      - POSTGRES_PASSWORD=alfresco
      - POSTGRES_USER=alfresco
      - POSTGRES_DB=alfresco
    command: postgres -c max_connections=300 -c log_min_messages=LOG
    ports:
      - "5432:5432"
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -d $$POSTGRES_DB -U $$POSTGRES_USER"]
      interval: 10s
      timeout: 3s
      retries: 3
      start_period: 5s
  solr6:
    image: docker.io/alfresco/alfresco-search-services:2.0.13
    mem_limit: 2g
    environment:
      # Solr needs to know how to register itself with Alfresco
      SOLR_ALFRESCO_HOST: "alfresco"
      SOLR_ALFRESCO_PORT: "8080"
      # Alfresco needs to know how to call solr
      SOLR_SOLR_HOST: "solr6"
      SOLR_SOLR_PORT: "8983"
      # Create the default alfresco and archive cores
      SOLR_CREATE_ALFRESCO_DEFAULTS: "alfresco,archive"
      # HTTPS or SECRET
      ALFRESCO_SECURE_COMMS: "secret"
      # SHARED SECRET VALUE
      JAVA_TOOL_OPTIONS: >-
        -Dalfresco.secureComms.secret=secret
    ports:
      - "8083:8983" # Browser port
  activemq:
    image: alfresco/alfresco-activemq:5.18-jre17-rockylinux8
    mem_limit: 1g
    ports:
      - "8161:8161" # Web Console
      - "5672:5672" # AMQP
      - "61616:61616" # OpenWire
      - "61613:61613" # STOMP
    healthcheck:
      test: ["CMD", "/opt/activemq/bin/activemq", "query", "--objname", "type=Broker,brokerName=*,service=Health", "|", "grep", "Good"]
      interval: 10s
      timeout: 5s
      retries: 5
      start_period: 5s
  content-app:
    image: alfresco/alfresco-content-app:5.2.0
    mem_limit: 128m
    environment:
      APP_BASE_SHARE_URL: "http://192.168.10.180:8080/aca/#/preview/s"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/"]
      interval: 10s
      timeout: 1s
      retries: 3
      start_period: 1s
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.aca.rule=PathPrefix(`/content-app`)"
      - "traefik.http.middlewares.acaroot.stripprefix.prefixes=/content-app"
      - "traefik.http.middlewares.acaforceslash.redirectregex.regex=^(.*/content-app)$$"
      - "traefik.http.middlewares.acaforceslash.redirectregex.replacement=$${1}/"
      - "traefik.http.middlewares.acachain.chain.middlewares=acaforceslash,acaroot"
      - "traefik.http.routers.aca.middlewares=acachain@docker"
  control-center:
    image: quay.io/alfresco/alfresco-control-center:9.2.0
    mem_limit: 128m
    environment:
      APP_CONFIG_PROVIDER: "ECM"
      APP_CONFIG_AUTH_TYPE: "BASIC"
      BASE_PATH: ./
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/"]
      interval: 10s
      timeout: 1s
      retries: 3
      start_period: 1s
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.acc.rule=PathPrefix(`/control-center`) || PathPrefix(`/admin`)"
      - "traefik.http.middlewares.accroot.stripprefix.prefixes=/admin,/control-center"
      - "traefik.http.middlewares.accforceslash.redirectregex.regex=^(.*/(admin|control-center))$$"
      - "traefik.http.middlewares.accforceslash.redirectregex.replacement=$${1}/"
      - "traefik.http.middlewares.accchain.chain.middlewares=accforceslash,accroot"
      - "traefik.http.routers.acc.middlewares=accchain@docker"
  proxy:
    image: traefik:3.1
    mem_limit: 128m
    command:
      - "--api.insecure=true"
      - "--providers.docker=true"
      - "--entrypoints.web.address=:8080"
      - "--entryPoints.traefik.address=:8888"
      - "--accesslog=true"
      - "--providers.docker.exposedByDefault=false"
      - "--ping.entrypoint=web"
      - "--ping=true"
    ports:
      - "8080:8080"
      - "8888:8888"
    healthcheck:
      test: ["CMD", "traefik", "healthcheck", "--ping"]
      interval: 20s
      timeout: 10s
      retries: 3
      start_period: 10s
    security_opt:
      - label=disable # Required for accessing the Docker socket on Selinux enabled systems
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro

将192.168.10.180替换成你的IP!然后访问http://192.168.10.180:8080/share/ admin admin

当服务运行时,您可以使用更多命令来浏览服务。 在运行这些之前,将目录更改为 docker-compose:
停止所有正在运行的容器:

 docker-compose stop

重新启动容器(使用 stop 命令后):

 docker-compose restart

启动使用 docker-compose 启动的容器 向上:

 docker-compose start

停止所有正在运行的容器,并删除它们和网络:

 docker-compose down --rmi all

网站公告

今日签到

点亮在社区的每一天
去签到