docker-compose 部署示例

文章目录

  • docker-compose文件格式
  • docker-compose 下载

docker-compose文件格式

这个软件的实际很小,只是根据配置文件产生一些docker命令来执行可以。
配置文件本身是yml的格式,如下

version: '3.5'

services:
    # Etherpad: real-time collaborative document editing
    etherpad:
        image: etherpad/etherpad:1.8.6
        restart: ${RESTART_POLICY:-unless-stopped}
        environment:
            - TITLE=${ETHERPAD_TITLE}
            - DEFAULT_PAD_TEXT=${ETHERPAD_DEFAULT_PAD_TEXT}
            - SKIN_NAME=${ETHERPAD_SKIN_NAME}
            - SKIN_VARIANTS=${ETHERPAD_SKIN_VARIANTS}
            - SUPPRESS_ERRORS_IN_PAD_TEXT=true
        networks:
            meet.jitsi:
                aliases:
                    - etherpad.meet.jitsi
    jibri:
        image: jitsi/jibri:${JITSI_IMAGE_VERSION:-stable-8960-1}
        restart: ${RESTART_POLICY:-unless-stopped}
        volumes:
            - ${CONFIG}/jibri:/config:Z
        shm_size: '2gb'
        cap_add:
            - SYS_ADMIN
        environment:
            - AUTOSCALER_SIDECAR_KEY_FILE
            - AUTOSCALER_SIDECAR_KEY_ID
            - AUTOSCALER_SIDECAR_GROUP_NAME
            - AUTOSCALER_SIDECAR_HOST_ID
            - AUTOSCALER_SIDECAR_INSTANCE_ID
            - AUTOSCALER_SIDECAR_PORT
            - AUTOSCALER_SIDECAR_REGION
            - AUTOSCALER_SIDECAR_SHUTDOWN_POLLING_INTERVAL
            - AUTOSCALER_SIDECAR_STATS_POLLING_INTERVAL
            - AUTOSCALER_URL
            - CHROMIUM_FLAGS
            - DISPLAY=:0
            - ENABLE_STATS_D
            - JIBRI_WEBHOOK_SUBSCRIBERS
            - JIBRI_HTTP_API_EXTERNAL_PORT
            - JIBRI_HTTP_API_INTERNAL_PORT
            - JIBRI_RECORDING_RESOLUTION
            - JIBRI_RECORDING_VIDEO_ENCODE_PRESET
            - JIBRI_RECORDING_CONSTANT_RATE_FACTOR
            - JIBRI_RECORDING_FRAMERATE
            - JIBRI_RECORDING_QUEUE_SIZE
            - JIBRI_RECORDING_STREAMING_MAX_BITRATE
            - JIBRI_USAGE_TIMEOUT
            - JIBRI_XMPP_USER
            - JIBRI_XMPP_PASSWORD
            - JIBRI_BREWERY_MUC
            - JIBRI_RECORDER_USER
            - JIBRI_RECORDER_PASSWORD
            - JIBRI_RECORDING_DIR
            - JIBRI_FINALIZE_RECORDING_SCRIPT_PATH
            - JIBRI_STRIP_DOMAIN_JID
            - JIBRI_STATSD_HOST
            - JIBRI_STATSD_PORT
            - LOCAL_ADDRESS
            - PUBLIC_URL
            - TZ
            - XMPP_AUTH_DOMAIN
            - XMPP_DOMAIN
            - XMPP_INTERNAL_MUC_DOMAIN
            - XMPP_MUC_DOMAIN
            - XMPP_RECORDER_DOMAIN
            - XMPP_SERVER
            - XMPP_PORT
            - XMPP_TRUST_ALL_CERTS
        depends_on:
            - jicofo
        networks:
            meet.jitsi:
 networks:
            meet.jitsi:

docker-compose 下载

```curl -L https://github.com/docker/compose/releases/download/1.27.4/docker-compose-uname -s-uname -m -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

或者在公司网站下载

curl ‘http://pan.itshine.cn:5080/?explorer/share/fileOut&shareID=64h6PiQQ&path=%7BshareItemLink%3A64h6PiQQ%7D%2Fdocker-compose-yms%2Fdocker-compose’ > ‘./docker-compose’

mv docker-compose /usr/bin
chmod +x /usr/bin/docker-compose


# 常用命令
docker-compose -f my.yml -f m1.yml -f m2.yml  up -d 
my.yml是编排文件,如果不写 -f my.yml那么,直接读docker-compose.yml,如果此文件也不存在,报错。

up : 创建容器并启动,如果容器存在,则直接启动
-d: 后台启动

down: 关闭容器并删除
stop: 关闭容器不删除容器

start:

> docker-compose up -d 

# nextcloud 

下面是一个示例的docker-compose文件,用于实现Nextcloud Talk功能:

version: '3'
services:
  db:
    image: mysql:5.7
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=your_mysql_root_password
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_PASSWORD=1qaz!QAZ
    volumes:
      - nextcloud_db:/var/lib/mysql

  app:
    image: nextcloud:latest
    restart: always
    ports:
      - 8080:80
    volumes:
      - nextcloud_data:/var/www/html
    environment:
      - MYSQL_HOST=db
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_PASSWORD=1qaz!QAZ

volumes:
  nextcloud_db:
  nextcloud_data:

请替换以下内容以适应您的环境:

  • your_mysql_root_password:您的MySQL根密码。
  • your_nextcloud_db_password:用于Nextcloud数据库的密码。

请将上述内容保存为docker-compose.yml文件,并确保已经安装了Docker和Docker Compose。在包含docker-compose.yml文件的目录中,运行以下命令启动Nextcloud:

docker-compose up -d

这将启动MySQL和Nextcloud容器,并将它们连接在一起。然后,您可以通过访问http://localhost:8080来访问Nextcloud界面。您可以按照Nextcloud的文档进行初始设置,并在应用商店中安装和配置Nextcloud Talk插件以启用Talk功能。

请注意,这只是一个示例的docker-compose文件,具体的安装步骤可能因为不同的Nextcloud版本而有所不同。请根据您所选择的具体Nextcloud版本的安装文档进行相应的配置。


# docker-compose help
[ https://docs.docker.com/engine/reference/commandline/ ]

你可能感兴趣的:(docker,eureka,容器)