Merge pull request #9493 from owncloud/continuous-deploymemts

ci: bring up the new continous deployments
This commit is contained in:
Michael Barz
2024-06-28 16:20:21 +02:00
committed by GitHub
17 changed files with 74 additions and 392 deletions
+7 -11
View File
@@ -2196,19 +2196,15 @@ def skipIfUnchanged(ctx, type):
def example_deploys(ctx):
on_merge_deploy = [
"ocis_ldap/latest.yml",
"ocis_keycloak/latest.yml",
"ocis_traefik/latest.yml",
"ocis_wopi/latest.yml",
"ocis_s3/latest.yml",
"ocis_full/master.yml",
]
nightly_deploy = [
"ocis_ldap/released.yml",
"ocis_keycloak/released.yml",
"ocis_traefik/released.yml",
"ocis_wopi/released.yml",
"ocis_traefik/daily.yml",
"ocis_wopi/daily.yml",
"ocis_ldap/rolling.yml",
"ocis_keycloak/rolling.yml",
"ocis_full/production.yml",
"ocis_full/rolling.yml",
"ocis_full/onlyoffice-rolling.yml",
"ocis_full/s3-rolling.yml",
]
# if on master branch:
@@ -39,8 +39,9 @@
COMPANION_IMAGE: owncloud/uppy-companion:3.12.13-owncloud
WOPISERVER_DOMAIN: wopiserver.ocis.master.owncloud.works
COLLABORA_DOMAIN: collabora.ocis.master.owncloud.works
INBUCKET_DOMAIN: mail.ocis.master.owncloud.works
DEMO_USERS: "true"
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
COMPOSE_FILE: docker-compose.yml:ocis.yml:tika.yml:collabora.yml:cloudimporter.yml:inbucket.yml:monitoring_tracing/monitoring.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
@@ -1,5 +1,5 @@
---
- name: continuous-deployment-ocis-wopi-latest
- name: continuous-deployment-ocis-onlyoffice-rolling
server:
server_type: cx21
image: ubuntu-22.04
@@ -14,7 +14,7 @@
- /var/lib/docker/volumes/ocis_certs
domains:
- "*.ocis-wopi.latest.owncloud.works"
- "*.ocis-onlyoffice.rolling.owncloud.works"
vars:
ssh_authorized_keys:
@@ -28,28 +28,27 @@
- name: ocis
git_url: https://github.com/owncloud/ocis.git
ref: master
docker_compose_path: deployments/examples/ocis_wopi
docker_compose_path: deployments/examples/ocis_full
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: latest
OCIS_DOMAIN: ocis.ocis-wopi.latest.owncloud.works
COMPANION_DOMAIN: companion.ocis-wopi.latest.owncloud.works
COMPANION_WEB_CONFIG_FILE_NAME: web-latest.yaml
OCIS_DOCKER_TAG: 6.1.0-alpha.1
OCIS_DOCKER_IMAGE: owncloud/ocis-rolling
OCIS_DOMAIN: ocis.ocis-onlyoffice.rolling.owncloud.works
COMPANION_DOMAIN: companion.ocis-onlyoffice.rolling.owncloud.works
COMPANION_IMAGE: owncloud/uppy-companion:3.12.13-owncloud
WOPISERVER_DOMAIN: wopiserver.ocis-wopi.latest.owncloud.works
COLLABORA_DOMAIN: collabora.ocis-wopi.latest.owncloud.works
ONLYOFFICE_DOMAIN: onlyoffice.ocis-wopi.latest.owncloud.works
INBUCKET_DOMAIN: mail.ocis-wopi.latest.owncloud.works
WOPISERVER_DOMAIN: wopiserver.ocis-onlyoffice.rolling.owncloud.works
ONLYOFFICE_DOMAIN: onlyoffice.ocis-onlyoffice.rolling.owncloud.works
INBUCKET_DOMAIN: mail.ocis-onlyoffice.rolling.owncloud.works
DEMO_USERS: "true"
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
COMPOSE_FILE: docker-compose.yml:ocis.yml:tika.yml:onlyoffice.yml:cloudimporter.yml:inbucket.yml:monitoring_tracing/monitoring-oo.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
env:
NETWORK_NAME: ocis-net
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-wopi.latest.owncloud.works
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-onlyoffice.rolling.owncloud.works
JAEGER_COLLECTOR: jaeger-collector.infra.owncloud.works:443
TELEGRAF_SPECIFIC_CONFIG: ocis_wopi
OCIS_URL: ocis.ocis-wopi.latest.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-wopi-latest
TELEGRAF_SPECIFIC_CONFIG: ocis_onlyoffice
OCIS_URL: ocis.ocis-onlyoffice.rolling.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-onlyoffice-rolling
@@ -39,8 +39,9 @@
WOPISERVER_DOMAIN: wopiserver.ocis.production.owncloud.works
COLLABORA_DOMAIN: collabora.ocis.production.owncloud.works
ONLYOFFICE_DOMAIN: onlyoffice.ocis.production.owncloud.works
INBUCKET_DOMAIN: mail.ocis.production.owncloud.works
DEMO_USERS: "true"
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
COMPOSE_FILE: docker-compose.yml:ocis.yml:tika.yml:collabora.yml:cloudimporter.yml:inbucket.yml:monitoring.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
@@ -32,15 +32,16 @@
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: latest
OCIS_DOCKER_TAG: 6.1.0-alpha.1
OCIS_DOCKER_IMAGE: owncloud/ocis-rolling
OCIS_DOMAIN: ocis.ocis.rolling.owncloud.works
COMPANION_DOMAIN: companion.ocis.rolling.owncloud.works
COMPANION_IMAGE: owncloud/uppy-companion:3.12.13-owncloud
WOPISERVER_DOMAIN: wopiserver.ocis.rolling.owncloud.works
COLLABORA_DOMAIN: collabora.ocis.rolling.owncloud.works
INBUCKET_DOMAIN: mail.ocis.rolling.owncloud.works
DEMO_USERS: "true"
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
COMPOSE_FILE: docker-compose.yml:ocis.yml:tika.yml:collabora.yml:cloudimporter.yml:inbucket.yml:monitoring_tracing/monitoring.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
@@ -1,5 +1,5 @@
---
- name: continuous-deployment-ocis-wopi-daily
- name: continuous-deployment-ocis-s3-rolling
server:
server_type: cx21
image: ubuntu-22.04
@@ -14,7 +14,7 @@
- /var/lib/docker/volumes/ocis_certs
domains:
- "*.ocis-wopi.daily.owncloud.works"
- "*.ocis-s3.rolling.owncloud.works"
vars:
ssh_authorized_keys:
@@ -28,28 +28,28 @@
- name: ocis
git_url: https://github.com/owncloud/ocis.git
ref: master
docker_compose_path: deployments/examples/ocis_wopi
docker_compose_path: deployments/examples/ocis_full
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: latest
OCIS_DOMAIN: ocis.ocis-wopi.daily.owncloud.works
COMPANION_DOMAIN: companion.ocis-wopi.daily.owncloud.works
COMPANION_WEB_CONFIG_FILE_NAME: web-daily.yaml
OCIS_DOCKER_TAG: 6.1.0-alpha.1
OCIS_DOCKER_IMAGE: owncloud/ocis-rolling
OCIS_DOMAIN: ocis.ocis-s3.rolling.owncloud.works
COMPANION_DOMAIN: companion.ocis-s3.rolling.owncloud.works
COMPANION_IMAGE: owncloud/uppy-companion:3.12.13-owncloud
WOPISERVER_DOMAIN: wopiserver.ocis-wopi.daily.owncloud.works
COLLABORA_DOMAIN: collabora.ocis-wopi.daily.owncloud.works
ONLYOFFICE_DOMAIN: onlyoffice.ocis-wopi.daily.owncloud.works
INBUCKET_DOMAIN: mail.ocis-wopi.daily.owncloud.works
WOPISERVER_DOMAIN: wopiserver.ocis-s3.rolling.owncloud.works
COLLABORA_DOMAIN: collabora.ocis-s3.rolling.owncloud.works
INBUCKET_DOMAIN: mail.ocis-s3.rolling.owncloud.works
MINIO_DOMAIN: minio.ocis-s3.rolling.owncloud.works
DEMO_USERS: "true"
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
COMPOSE_FILE: docker-compose.yml:ocis.yml:s3ng.yml:minio.yml:tika.yml:collabora.yml:cloudimporter.yml:inbucket.yml:monitoring_tracing/monitoring.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
env:
NETWORK_NAME: ocis-net
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-wopi.daily.owncloud.works
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-s3.rolling.owncloud.works
JAEGER_COLLECTOR: jaeger-collector.infra.owncloud.works:443
TELEGRAF_SPECIFIC_CONFIG: ocis_wopi
OCIS_URL: ocis.ocis-wopi.daily.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-wopi-daily
TELEGRAF_SPECIFIC_CONFIG: ocis_full
OCIS_URL: ocis.ocis-s3.rolling.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-s3-rolling
@@ -1,48 +0,0 @@
---
- name: continuous-deployment-ocis-keycloak-released
server:
server_type: cx21
image: ubuntu-22.04
location: nbg1
initial_ssh_key_names:
- owncloud-ocis@drone.owncloud.com
labels:
owner: ocis-team
for: oCIS-continuous-deployment-examples
rebuild: $REBUILD
rebuild_carry_paths:
- /var/lib/docker/volumes/ocis_certs
domains:
- "*.ocis-keycloak.released.owncloud.works"
vars:
ssh_authorized_keys:
- https://github.com/butonic.keys
- https://github.com/fschade.keys
- https://github.com/kulmann.keys
- https://github.com/micbar.keys
- https://github.com/rhafer.keys
- https://github.com/wkloucek.keys
docker_compose_projects:
- name: ocis
git_url: https://github.com/owncloud/ocis.git
ref: master
docker_compose_path: deployments/examples/ocis_keycloak
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: 5.0.3
OCIS_DOMAIN: ocis.ocis-keycloak.released.owncloud.works
KEYCLOAK_DOMAIN: keycloak.ocis-keycloak.released.owncloud.works
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
env:
NETWORK_NAME: ocis-net
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-keycloak.released.owncloud.works
JAEGER_COLLECTOR: jaeger-collector.infra.owncloud.works:443
TELEGRAF_SPECIFIC_CONFIG: ocis_single_container
OCIS_URL: ocis.ocis-keycloak.released.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-keycloak-released
@@ -1,5 +1,5 @@
---
- name: continuous-deployment-ocis-keycloak-latest
- name: continuous-deployment-ocis-keycloak-rolling
server:
server_type: cx21
image: ubuntu-22.04
@@ -14,7 +14,7 @@
- /var/lib/docker/volumes/ocis_certs
domains:
- "*.ocis-keycloak.latest.owncloud.works"
- "*.ocis-keycloak.rolling.owncloud.works"
vars:
ssh_authorized_keys:
@@ -32,17 +32,18 @@
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: latest
OCIS_DOMAIN: ocis.ocis-keycloak.latest.owncloud.works
KEYCLOAK_DOMAIN: keycloak.ocis-keycloak.latest.owncloud.works
OCIS_DOCKER_TAG: 6.1.0-alpha.1
OCIS_DOCKER_IMAGE: owncloud/ocis-rolling
OCIS_DOMAIN: ocis.ocis-keycloak.rolling.owncloud.works
KEYCLOAK_DOMAIN: keycloak.ocis-keycloak.rolling.owncloud.works
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
env:
NETWORK_NAME: ocis-net
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-keycloak.latest.owncloud.works
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-keycloak.rolling.owncloud.works
JAEGER_COLLECTOR: jaeger-collector.infra.owncloud.works:443
TELEGRAF_SPECIFIC_CONFIG: ocis_single_container
OCIS_URL: ocis.ocis-keycloak.latest.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-keycloak-latest
OCIS_URL: ocis.ocis-keycloak.rolling.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-keycloak-rolling
@@ -1,48 +0,0 @@
---
- name: continuous-deployment-ocis-ldap-released
server:
server_type: cx21
image: ubuntu-22.04
location: nbg1
initial_ssh_key_names:
- owncloud-ocis@drone.owncloud.com
labels:
owner: ocis-team
for: oCIS-continuous-deployment-examples
rebuild: $REBUILD
rebuild_carry_paths:
- /var/lib/docker/volumes/ocis_certs
domains:
- "*.ocis-ldap.released.owncloud.works"
vars:
ssh_authorized_keys:
- https://github.com/butonic.keys
- https://github.com/fschade.keys
- https://github.com/kulmann.keys
- https://github.com/micbar.keys
- https://github.com/rhafer.keys
- https://github.com/wkloucek.keys
docker_compose_projects:
- name: ocis
git_url: https://github.com/owncloud/ocis.git
ref: master
docker_compose_path: deployments/examples/ocis_ldap
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: 5.0.3
OCIS_DOMAIN: ocis.ocis-ldap.released.owncloud.works
LDAP_MANAGER_DOMAIN: ldap.ocis-ldap.released.owncloud.works
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
env:
NETWORK_NAME: ocis-net
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-ldap.released.owncloud.works
JAEGER_COLLECTOR: jaeger-collector.infra.owncloud.works:443
TELEGRAF_SPECIFIC_CONFIG: ocis_single_container
OCIS_URL: ocis.ocis-ldap.released.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-ldap-released
@@ -1,5 +1,5 @@
---
- name: continuous-deployment-ocis-ldap-latest
- name: continuous-deployment-ocis-ldap-rolling
server:
server_type: cx21
image: ubuntu-22.04
@@ -14,7 +14,7 @@
- /var/lib/docker/volumes/ocis_certs
domains:
- "*.ocis-ldap.latest.owncloud.works"
- "*.ocis-ldap.rolling.owncloud.works"
vars:
ssh_authorized_keys:
@@ -32,17 +32,18 @@
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: latest
OCIS_DOMAIN: ocis.ocis-ldap.latest.owncloud.works
LDAP_MANAGER_DOMAIN: ldap.ocis-ldap.latest.owncloud.works
OCIS_DOCKER_TAG: 6.1.0-alpha.1
OCIS_DOCKER_IMAGE: owncloud/ocis-rolling
OCIS_DOMAIN: ocis.ocis-ldap.rolling.owncloud.works
LDAP_MANAGER_DOMAIN: ldap.ocis-ldap.rolling.owncloud.works
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
env:
NETWORK_NAME: ocis-net
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-ldap.latest.owncloud.works
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-ldap.rolling.owncloud.works
JAEGER_COLLECTOR: jaeger-collector.infra.owncloud.works:443
TELEGRAF_SPECIFIC_CONFIG: ocis_single_container
OCIS_URL: ocis.ocis-ldap.latest.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-ldap-latest
OCIS_URL: ocis.ocis-ldap.rolling.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-ldap-rolling
@@ -1,54 +0,0 @@
---
- name: continuous-deployment-ocis-wopi-released
server:
server_type: cx21
image: ubuntu-22.04
location: nbg1
initial_ssh_key_names:
- owncloud-ocis@drone.owncloud.com
labels:
owner: ocis-team
for: oCIS-continuous-deployment-examples
rebuild: $REBUILD
rebuild_carry_paths:
- /var/lib/docker/volumes/ocis_certs
domains:
- "*.ocis-wopi.released.owncloud.works"
vars:
ssh_authorized_keys:
- https://github.com/butonic.keys
- https://github.com/fschade.keys
- https://github.com/kulmann.keys
- https://github.com/micbar.keys
- https://github.com/rhafer.keys
- https://github.com/wkloucek.keys
docker_compose_projects:
- name: ocis
git_url: https://github.com/owncloud/ocis.git
ref: master
docker_compose_path: deployments/examples/ocis_wopi
env:
INSECURE: "false"
TRAEFIK_ACME_MAIL: mbarz@owncloud.com
OCIS_DOCKER_TAG: 5.0.3
OCIS_DOMAIN: ocis.ocis-wopi.released.owncloud.works
COMPANION_DOMAIN: companion.ocis-wopi.released.owncloud.works
COMPANION_IMAGE: owncloud/uppy-companion:3.12.13-owncloud
COMPANION_WEB_CONFIG_FILE_NAME: web-released.yaml
WOPISERVER_DOMAIN: wopiserver.ocis-wopi.released.owncloud.works
COLLABORA_DOMAIN: collabora.ocis-wopi.released.owncloud.works
ONLYOFFICE_DOMAIN: onlyoffice.ocis-wopi.released.owncloud.works
DEMO_USERS: "true"
COMPOSE_FILE: docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
- name: monitoring
git_url: https://github.com/owncloud-devops/monitoring-tracing-client.git
ref: master
env:
NETWORK_NAME: ocis-net
TELEMETRY_SERVE_DOMAIN: telemetry.ocis-wopi.released.owncloud.works
JAEGER_COLLECTOR: jaeger-collector.infra.owncloud.works:443
TELEGRAF_SPECIFIC_CONFIG: ocis_wopi
OCIS_URL: ocis.ocis-wopi.released.owncloud.works
OCIS_DEPLOYMENT_ID: continuous-deployment-ocis-wopi-released
@@ -13,6 +13,15 @@ services:
# will expose the same metrics, so it's sufficient to query one endpoint
PROXY_DEBUG_ADDR: 0.0.0.0:9205
collaboration-oo:
environment:
# tracing
OCIS_TRACING_ENABLED: "true"
OCIS_TRACING_TYPE: "jaeger"
OCIS_TRACING_ENDPOINT: jaeger-agent:6831
# metrics
COLLABORATION_DEBUG_ADDR: 0.0.0.0:9304
networks:
ocis-net:
external: true
@@ -48,7 +48,7 @@ services:
restart: always
ocis:
image: owncloud/ocis:${OCIS_DOCKER_TAG:-latest}
image: ${OCIS_DOCKER_IMAGE:-owncloud/ocis}:${OCIS_DOCKER_TAG:-latest}
networks:
ocis-net:
entrypoint:
@@ -47,7 +47,7 @@ services:
restart: always
ocis:
image: owncloud/ocis:${OCIS_DOCKER_TAG:-latest}
image: ${OCIS_DOCKER_IMAGE:-owncloud/ocis}:${OCIS_DOCKER_TAG:-latest}
networks:
ocis-net:
depends_on:
-39
View File
@@ -1,39 +0,0 @@
# If you're on a internet facing server please comment out following line.
# It skips certificate validation for various parts of oCIS and is needed if you use self signed certificates.
INSECURE=true
### Traefik settings ###
# Serve Traefik dashboard. Defaults to "false".
TRAEFIK_DASHBOARD=
# Domain of Traefik, where you can find the dashboard. Defaults to "traefik.owncloud.test"
TRAEFIK_DOMAIN=
# Basic authentication for the dashboard. Defaults to user "admin" and password "admin"
TRAEFIK_BASIC_AUTH_USERS=
# Email address for obtaining LetsEncrypt certificates, needs only be changed if this is a public facing server
TRAEFIK_ACME_MAIL=
### oCIS settings ###
# oCIS version. Defaults to "latest"
OCIS_DOCKER_TAG=
# Domain of oCIS, where you can find the frontend. Defaults to "ocis.owncloud.test"
OCIS_DOMAIN=
# oCIS admin user password. Defaults to "admin".
ADMIN_PASSWORD=
# The demo users should not be created on a production instance
# because their passwords are public. Defaults to "false".
DEMO_USERS=
### MINIO / S3 settings ###
# Domain of MinIO where the Web UI is accessible. Defaults to "minio.owncloud.test".
MINIO_DOMAIN=
# S3 bucket name, where oCIS stores its data in. Defaults to "ocis-bucket".
MINIO_BUCKET=
# S3 bucket access key, which oCIS uses to authenticate. Defaults to "ocis".
MINIO_ACCESS_KEY=
# S3 bucket access key secret, which oCIS uses to authenticate. Defaults to "ocis-secret-key".
MINIO_SECRET_KEY=
# If you want to use debugging and tracing with this stack,
# you need uncomment following line. Please see documentation at
# https://owncloud.dev/ocis/deployment/monitoring-tracing/
#COMPOSE_FILE=docker-compose.yml:monitoring_tracing/docker-compose-additions.yml
-6
View File
@@ -1,6 +0,0 @@
---
document this deployment example in: docs/ocis/deployment/ocis_s3.md
---
Please refer to [our documentation](https://owncloud.dev/ocis/deployment/ocis_s3/)
for instructions on how to deploy this scenario.
@@ -1,132 +0,0 @@
---
version: "3.7"
services:
traefik:
image: traefik:v2.9.1
networks:
ocis-net:
aliases:
- ${OCIS_DOMAIN:-ocis.owncloud.test}
command:
- "--log.level=${TRAEFIK_LOG_LEVEL:-ERROR}"
# letsencrypt configuration
- "--certificatesResolvers.http.acme.email=${TRAEFIK_ACME_MAIL:-example@example.org}"
- "--certificatesResolvers.http.acme.storage=/certs/acme.json"
- "--certificatesResolvers.http.acme.httpChallenge.entryPoint=http"
# enable dashboard
- "--api.dashboard=true"
# define entrypoints
- "--entryPoints.http.address=:80"
- "--entryPoints.http.http.redirections.entryPoint.to=https"
- "--entryPoints.http.http.redirections.entryPoint.scheme=https"
- "--entryPoints.https.address=:443"
# docker provider (get configuration from container labels)
- "--providers.docker.endpoint=unix:///var/run/docker.sock"
- "--providers.docker.exposedByDefault=false"
# access log
- "--accessLog=true"
- "--accessLog.format=json"
- "--accessLog.fields.headers.names.X-Request-Id=keep"
ports:
- "80:80"
- "443:443"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "certs:/certs"
labels:
- "traefik.enable=${TRAEFIK_DASHBOARD:-false}"
- "traefik.http.middlewares.traefik-auth.basicauth.users=${TRAEFIK_BASIC_AUTH_USERS:-admin:$$apr1$$4vqie50r$$YQAmQdtmz5n9rEALhxJ4l.}" # defaults to admin:admin
- "traefik.http.routers.traefik.entrypoints=https"
- "traefik.http.routers.traefik.rule=Host(`${TRAEFIK_DOMAIN:-traefik.owncloud.test}`)"
- "traefik.http.routers.traefik.middlewares=traefik-auth"
- "traefik.http.routers.traefik.tls.certresolver=http"
- "traefik.http.routers.traefik.service=api@internal"
logging:
driver: "local"
restart: always
ocis:
image: owncloud/ocis:${OCIS_DOCKER_TAG:-latest}
networks:
ocis-net:
entrypoint:
- /bin/sh
# run ocis init to initialize a configuration file with random secrets
# it will fail on subsequent runs, because the config file already exists
# therefore we ignore the error and then start the ocis server
command: ["-c", "ocis init || true; ocis server"]
environment:
OCIS_URL: https://${OCIS_DOMAIN:-ocis.owncloud.test}
OCIS_LOG_LEVEL: ${OCIS_LOG_LEVEL:-info}
OCIS_LOG_COLOR: "${OCIS_LOG_COLOR:-false}"
PROXY_TLS: "false" # do not use SSL between Traefik and oCIS
# activate s3ng storage driver
STORAGE_USERS_DRIVER: s3ng
STORAGE_SYSTEM_DRIVER: ocis # keep system data on ocis storage since this are only small files atm
# s3ng specific settings
STORAGE_USERS_S3NG_ENDPOINT: http://minio:9000
STORAGE_USERS_S3NG_REGION: default
STORAGE_USERS_S3NG_ACCESS_KEY: ${MINIO_ACCESS_KEY:-ocis}
STORAGE_USERS_S3NG_SECRET_KEY: ${MINIO_SECRET_KEY:-ocis-secret-key}
STORAGE_USERS_S3NG_BUCKET: ${MINIO_BUCKET:-ocis-bucket}
# INSECURE: needed if oCIS / Traefik is using self generated certificates
OCIS_INSECURE: "${INSECURE:-false}"
# basic auth (not recommended, but needed for e.g., WebDav clients that do not support OpenID Connect)
PROXY_ENABLE_BASIC_AUTH: "${PROXY_ENABLE_BASIC_AUTH:-false}"
# admin user password
IDM_ADMIN_PASSWORD: "${ADMIN_PASSWORD:-admin}" # this overrides the admin password from the configuration file
# demo users
IDM_CREATE_DEMO_USERS: "${DEMO_USERS:-false}"
# password policies
OCIS_PASSWORD_POLICY_BANNED_PASSWORDS_LIST: "banned-password-list.txt"
volumes:
- ./config/ocis/banned-password-list.txt:/etc/ocis/banned-password-list.txt
- ocis-config:/etc/ocis
- ocis-data:/var/lib/ocis
labels:
- "traefik.enable=true"
- "traefik.http.routers.ocis.entrypoints=https"
- "traefik.http.routers.ocis.rule=Host(`${OCIS_DOMAIN:-ocis.owncloud.test}`)"
- "traefik.http.routers.ocis.tls.certresolver=http"
- "traefik.http.routers.ocis.service=ocis"
- "traefik.http.services.ocis.loadbalancer.server.port=9200"
logging:
driver: "local"
restart: always
minio:
image: minio/minio:latest
networks:
ocis-net:
entrypoint:
- /bin/sh
command:
[
"-c",
"mkdir -p /data/${MINIO_BUCKET:-ocis-bucket} && minio server --console-address ':9001' /data",
]
volumes:
- minio-data:/data
environment:
MINIO_ACCESS_KEY: ${MINIO_ACCESS_KEY:-ocis}
MINIO_SECRET_KEY: ${MINIO_SECRET_KEY:-ocis-secret-key}
labels:
- "traefik.enable=true"
- "traefik.http.routers.minio.entrypoints=https"
- "traefik.http.routers.minio.rule=Host(`${MINIO_DOMAIN:-minio.owncloud.test}`)"
- "traefik.http.routers.minio.tls.certresolver=http"
- "traefik.http.routers.minio.service=minio"
- "traefik.http.services.minio.loadbalancer.server.port=9001"
logging:
driver: "local"
restart: always
volumes:
certs:
ocis-config:
ocis-data:
minio-data:
networks:
ocis-net: