mirror of
https://github.com/zokradonh/kopano-docker.git
synced 2026-08-11 16:32:59 +00:00
Add example to run meet standalone (#90)
* refactor ssl generation make ssl certificate names match container names add dns names to certificates * add example to run meet and its dependencies together with an existing kopano * update webapp example * remove port numbers from ssl cert as these could have been specified in a demo environment * set default values for HTTP, HTTPS and EMAIL fail if FQDN is unset make smtp and kopano-server ports configurable * add hint about 2015 to setup.sh * also add new defaults to webapp compose * add example for standalone core as well
This commit is contained in:
@@ -0,0 +1,107 @@
|
||||
version: "3.5"
|
||||
|
||||
services:
|
||||
ldap:
|
||||
image: ${docker_repo:-zokradonh}/kopano_ldap_demo
|
||||
container_name: ldap
|
||||
ports:
|
||||
- ${LDAPPORT:-389}:389
|
||||
environment:
|
||||
- LDAP_ORGANISATION=${LDAP_ORGANISATION}
|
||||
- LDAP_DOMAIN=${LDAP_DOMAIN}
|
||||
- LDAP_BASE_DN=${LDAP_BASE_DN}
|
||||
- LDAP_ADMIN_PASSWORD=${LDAP_ADMIN_PASSWORD}
|
||||
- LDAP_READONLY_USER=true
|
||||
- LDAP_READONLY_USER_PASSWORD=${LDAP_READONLY_USER_PASSWORD}
|
||||
command: "--loglevel info --copy-service"
|
||||
volumes:
|
||||
- ldap:/var/lib/ldap
|
||||
- slapd:/etc/ldap/slapd.d
|
||||
networks:
|
||||
- ldap-net
|
||||
|
||||
db:
|
||||
image: mariadb:10.3.10-bionic
|
||||
restart: always
|
||||
container_name: kopano_db
|
||||
volumes:
|
||||
- mysql/:/var/lib/mysql
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", 'mysql --database=$$MYSQL_DATABASE --password=$$MYSQL_ROOT_PASSWORD --execute="SELECT count(table_name) > 0 FROM information_schema.tables;" --skip-column-names -B']
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 4
|
||||
networks:
|
||||
- kopano-net
|
||||
|
||||
kopano_ssl:
|
||||
image: ${docker_repo:-zokradonh}/kopano_ssl
|
||||
container_name: kopano_ssl
|
||||
environment:
|
||||
- FQDN=${FQDN}
|
||||
- PKI_COUNTRY=NL
|
||||
volumes:
|
||||
- /etc/kopano/ssl/:/kopano/ssl
|
||||
|
||||
kopano_server:
|
||||
image: ${docker_repo:-zokradonh}/kopano_core:${CORE_VERSION:-latest}
|
||||
hostname: kopano_server
|
||||
container_name: kopano_server
|
||||
depends_on:
|
||||
- db
|
||||
- ldap
|
||||
- kopano_ssl
|
||||
ports:
|
||||
- ${KOPANOPORT:-236}:236
|
||||
- ${KOPANOSPORT:-237}:237
|
||||
environment:
|
||||
- SERVICE_TO_START=server
|
||||
- TZ=${TZ}
|
||||
- KCCONF_SERVER_COREDUMP_ENABLED=no
|
||||
- KCCONF_SERVER_LOG_LEVEL=3
|
||||
- KCCONF_SERVER_MYSQL_HOST=${MYSQL_HOST}
|
||||
- KCCONF_SERVER_MYSQL_PORT=3306
|
||||
- KCCONF_SERVER_MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
- KCCONF_SERVER_MYSQL_USER=${MYSQL_USER}
|
||||
- KCCONF_SERVER_MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
- KCCONF_SERVER_SERVER_SSL_KEY_FILE=/kopano/ssl/kopano_server.pem
|
||||
- KCCONF_SERVER_SERVER_SSL_CA_FILE=/kopano/ssl/ca.pem
|
||||
- KCCONF_SERVER_SERVER_NAME=Kopano
|
||||
- KCCONF_SERVER_SSLKEYS_PATH=/kopano/ssl/clients
|
||||
- KCCONF_SERVER_PROXY_HEADER=* # delete line if webapp is not behind reverse proxy
|
||||
- KCCONF_SERVER_SYSTEM_EMAIL_ADDRESS=${POSTMASTER_ADDRESS}
|
||||
- KCCONF_SERVER_SYNC_GAB_REALTIME=no
|
||||
- KCCONF_LDAP_LDAP_URI=${LDAP_SERVER}
|
||||
- KCCONF_LDAP_LDAP_BIND_USER=${LDAP_BIND_DN}
|
||||
- KCCONF_LDAP_LDAP_BIND_PASSWD=${LDAP_BIND_PW}
|
||||
- KCCONF_LDAP_LDAP_SEARCH_BASE=${LDAP_SEARCH_BASE}
|
||||
- KCUNCOMMENT_LDAP_1=${KCUNCOMMENT_LDAP_1}
|
||||
- KCCOMMENT_LDAP_1=${KCCOMMENT_LDAP_1}
|
||||
- ADDITIONAL_KOPANO_PACKAGES=${ADDITIONAL_KOPANO_PACKAGES}
|
||||
networks:
|
||||
- kopano-net
|
||||
- ldap-net
|
||||
- web-net
|
||||
volumes:
|
||||
- kopanodata/:/kopano/data
|
||||
- /etc/kopano/ssl/:/kopano/ssl
|
||||
- /run/kopano/:/run/kopano
|
||||
|
||||
volumes:
|
||||
ldap:
|
||||
slapd:
|
||||
mysql:
|
||||
kopanodata:
|
||||
|
||||
networks:
|
||||
web-net:
|
||||
kopano-net:
|
||||
driver: bridge
|
||||
ldap-net:
|
||||
name: ldap-net
|
||||
driver: bridge
|
||||
@@ -0,0 +1,8 @@
|
||||
FQDN=kopano.demo:2015
|
||||
FQDNCLEANED=kopano-demo
|
||||
INSECURE=yes
|
||||
TZ=Europe/Berlin
|
||||
HTTP=10080
|
||||
HTTPS=10443
|
||||
|
||||
# TODO add reverse proxy example, make sure that requests go through reverse proxy
|
||||
@@ -0,0 +1,113 @@
|
||||
version: "3.5"
|
||||
|
||||
services:
|
||||
web:
|
||||
image: ${docker_repo:-zokradonh}/kopano_web
|
||||
container_name: web
|
||||
restart: always
|
||||
ports:
|
||||
- "2015:2015"
|
||||
- "${HTTP:-80}:80"
|
||||
- "${HTTPS:-443}:443"
|
||||
environment:
|
||||
- EMAIL=${EMAIL:-off}
|
||||
- FQDN=${FQDN?err}
|
||||
command: wrapper.sh
|
||||
cap_drop:
|
||||
- ALL
|
||||
cap_add:
|
||||
- NET_BIND_SERVICE
|
||||
- CHOWN
|
||||
- SETGID
|
||||
- SETUID
|
||||
volumes:
|
||||
- web:/.kweb
|
||||
networks:
|
||||
web-net:
|
||||
aliases:
|
||||
- ${FQDNCLEANED?err}
|
||||
|
||||
kopano_ssl:
|
||||
image: ${docker_repo:-zokradonh}/kopano_ssl
|
||||
container_name: kopano_ssl
|
||||
environment:
|
||||
- FQDN=${FQDN}
|
||||
- PKI_COUNTRY=NL
|
||||
volumes:
|
||||
- /etc/kopano/ssl/:/kopano/ssl
|
||||
|
||||
kopano_grapi:
|
||||
image: ${docker_repo:-zokradonh}/kopano_core:${CORE_VERSION:-latest}
|
||||
container_name: kopano_grapi
|
||||
volumes:
|
||||
- /run/kopano:/run/kopano
|
||||
environment:
|
||||
- SERVICE_TO_START=grapi
|
||||
- TZ=${TZ}
|
||||
networks:
|
||||
- kopano-net
|
||||
|
||||
kopano_kapi:
|
||||
image: ${docker_repo:-zokradonh}/kopano_core:${CORE_VERSION:-latest}
|
||||
container_name: kopano_kapi
|
||||
depends_on:
|
||||
- kopano_grapi
|
||||
volumes:
|
||||
- /etc/kopano/ssl:/kopano/ssl
|
||||
- /run/kopano:/run/kopano
|
||||
environment:
|
||||
- SERVICE_TO_START=kapid
|
||||
- TZ=${TZ}
|
||||
- KCCONF_KAPID_LOG_LEVEL=DEBUG
|
||||
- KCCONF_KAPID_OIDC_ISSUER_IDENTIFIER=https://${FQDN}
|
||||
- KCCONF_KAPID_INSECURE=${INSECURE}
|
||||
networks:
|
||||
- kopano-net
|
||||
- web-net
|
||||
|
||||
kopano_konnect:
|
||||
image: ${docker_repo:-zokradonh}/kopano_konnect:${KONNECT_VERSION:-latest}
|
||||
container_name: kopano_konnect
|
||||
command: wrapper.sh
|
||||
volumes:
|
||||
- /etc/kopano/ssl:/kopano/ssl
|
||||
- /run/kopano:/run/kopano
|
||||
environment:
|
||||
- FQDN=${FQDN}
|
||||
networks:
|
||||
- web-net
|
||||
|
||||
kopano_kwmserver:
|
||||
image: ${docker_repo:-zokradonh}/kopano_kwmserver:${KWM_VERSION:-latest}
|
||||
container_name: kopano_kwmserver
|
||||
command: wrapper.sh
|
||||
environment:
|
||||
- INSECURE=${INSECURE}
|
||||
- oidc_issuer_identifier=https://${FQDN}
|
||||
volumes:
|
||||
- /etc/kopano/ssl:/kopano/ssl
|
||||
networks:
|
||||
- web-net
|
||||
|
||||
kopano_meet:
|
||||
image: ${docker_repo:-zokradonh}/kopano_meet:${MEET_VERSION:-latest}
|
||||
container_name: kopano_meet
|
||||
environment:
|
||||
- SERVICE_TO_START=meet
|
||||
- KCCONF_KWEBD_TLS=no
|
||||
depends_on:
|
||||
- kopano_kapi
|
||||
- kopano_konnect
|
||||
- kopano_kwmserver
|
||||
- web
|
||||
networks:
|
||||
- web-net
|
||||
|
||||
volumes:
|
||||
web:
|
||||
kopanossl:
|
||||
|
||||
networks:
|
||||
web-net:
|
||||
kopano-net:
|
||||
driver: bridge
|
||||
+14
-5
@@ -2,24 +2,33 @@ version: "3.5"
|
||||
|
||||
services:
|
||||
web:
|
||||
image: ${docker_repo:?err}/kopano_web
|
||||
image: ${docker_repo:-zokradonh}/kopano_web
|
||||
container_name: web
|
||||
restart: always
|
||||
ports:
|
||||
- "2015:2015"
|
||||
- "${HTTP}:8080"
|
||||
- "${HTTPS}:8443"
|
||||
- "${HTTP}:80"
|
||||
- "${HTTPS}:443"
|
||||
environment:
|
||||
- EMAIL=${EMAIL}
|
||||
- FQDN=${FQDN}
|
||||
command: wrapper.sh
|
||||
cap_drop:
|
||||
- ALL
|
||||
cap_add:
|
||||
- NET_BIND_SERVICE
|
||||
- CHOWN
|
||||
- SETGID
|
||||
- SETUID
|
||||
volumes:
|
||||
- web:/.kweb
|
||||
networks:
|
||||
- web-net
|
||||
web-net:
|
||||
aliases:
|
||||
- ${FQDN}
|
||||
|
||||
kopano_webapp:
|
||||
image: ${docker_repo:?err}/kopano_webapp:${WEBAPP_VERSION}
|
||||
image: ${docker_repo:-zokradonh}/kopano_webapp:${WEBAPP_VERSION:-latest}
|
||||
hostname: kopano_webapp
|
||||
container_name: kopano_webapp
|
||||
volumes:
|
||||
|
||||
Reference in New Issue
Block a user