adding Collabora Online Office to development system

This commit is contained in:
Ralf Becker 2020-01-06 19:01:28 +01:00
parent f5ed503502
commit 6432b00864
2 changed files with 52 additions and 3 deletions

View File

@ -25,6 +25,16 @@ volumes:
type: none
o: bind
device: $PWD/sources/egroupware/swoolepush
# collabora-config
collabora-config:
driver_opts:
type: none
o: bind
# to upgrade an existing non-docker installation most easy is to use the existing
# data directory /var/lib/egroupware AND the host database see below
#device: /var/lib/egroupware/default/loolwsd
# otherwise data is stored in data subdirectory of the current directory
device: $PWD/data/default/loolwsd
# for Mac and Windows, do NOT use a directory for the DB, as the Docker host is in a VM!
db:
sessions:
@ -111,6 +121,7 @@ services:
- "4443:443"
depends_on:
- egroupware
- collabora-key
container_name: egroupware-nginx
# run an own MariaDB:10.4 (you can use EGroupware's database backup and restore to add your existing database)
@ -122,6 +133,9 @@ services:
volumes:
- db:/var/lib/mysql
container_name: egroupware-db
# make mysql also available on the host
#ports:
#- "3306:3306"
# push server using phpswoole
push:
@ -154,3 +168,20 @@ services:
command: --schedule "0 0 4 * * *"
container_name: egroupware-watchtower
restart: always
# Collabora Online Office
collabora-key:
image: "quay.io/egroupware/collabora-key:stable"
#image: collabora/code:latest
# needs to be initialised via: docker run --rm -v dev_collabora-config:/mnt --entrypoint '/bin/cp -r /etc/loolwsd /mnt' quay.io/egroupware/collabora-key:stable
volumes:
- collabora-config:/etc/loolwsd
# dont try to regenerate the (not used certificate) as volumn is readonly
environment:
- DONT_GEN_SSL_CERT=1
restart: always
container_name: collabora-key
# set the ip-address of your docker host AND your official DNS name so Collabora
# can access EGroupware without the need to go over your firewall
#extra_hosts:
#- "my.host.name:ip-address"

View File

@ -27,9 +27,6 @@ server {
index index.php index.html index.htm;
# other settings
client_max_body_size 65M;
# EGroupware installed in /var/www/egroupware
location ^~ /egroupware {
alias /var/www/egroupware/;
@ -114,4 +111,25 @@ server {
location = / {
return 301 $scheme://$http_host/egroupware/index.php;
}
# Collabora sniplet meant to be included in server block of EGroupware vhost
# static files
location ^~ /loleaflet {
proxy_pass http://collabora-key:9980;
proxy_set_header Host $http_host;
}
# WOPI discovery URL
location ^~ /hosting/discovery {
proxy_pass http://collabora-key:9980;
proxy_set_header Host $http_host;
}
# websockets, download, presentation and image upload
location ^~ /lool {
proxy_pass http://collabora-key:9980;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
}
}