Setup:Installation Guide/Docker: Difference between revisions

No edit summary
No edit summary
Line 95: Line 95:
* search →Can be replaced by any version compatible OpenSearch server
* search →Can be replaced by any version compatible OpenSearch server
* proxy -> Can be replaced by any appropriately configured Proxy server / Loadbalancer
* proxy -> Can be replaced by any appropriately configured Proxy server / Loadbalancer
=== Installation ===
Get actual docker-compose-Files from https://bluespice.com/de/download/
wget <nowiki>https://bluespice.com/filebase/docker-deployment-script</nowiki> && unzip docker-deployment-script && cd docker-deployment-script/compose
{| class="wikitable"
|+
!Filename
!Type
!obligatory
!Comment
|-
|bluespice-deploy
|bash-script
|false
|Wrapper for general start-up of needed Containers
|-
|bluespice-prepare
|bash-script
|false
|Prepare Folder and Permissions before first start also creates service
|-
|bluespice.service
|service-script
|false
|Porper handling of the Containers on reboot
|-
|docker-compose.main.yml
|yml
|true
|Main Services/ run by bluespice-deploy
|-
|docker-compose.persistent-data-services.yml
|yml
|true
|Database and Search/ run by bluespice-deploy
|-
|docker-compose.stateless-services.yml
|yml
|false but strongly recommended for full functionality
|PDF-Renderer/Cache/Formula/Diagram-Service
|-
|docker-compose.proxy.yml
|yml
|false but recommended
|Proxy Service
|-
|docker-compose.proxy-letsencrypt.yml
|yml
|false
|Additional autorenewal service for LetsEncrypt-Certificates
|-
|docker-compose.kerberos-proxy.yml
|yml
|false
|Additional Proxy for Kerberos-Authenication
|}
The bluespice-deploy script starts the first 4 yml-Files by default.
% cat bluespice-deploy                                               
docker compose \
-f docker-compose.main.yml \
-f docker-compose.persistent-data-services.yml \
-f docker-compose.stateless-services.yml \
-f docker-compose.proxy.yml \
$@
To add additional Services either change script or just add them by hand:
bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -d
for bluespice.service please do also either expand the line in the etc/systemd/system/bluespice.service:
[Unit]
Description=BlueSpice-Docker startup routinie
Requires=docker.service
After=docker.service
[Service]
WorkingDirectory=<WORKDIR>
ExecStart=<WORKDIR>/bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -f -d --remove-orphans
ExecStop=bluespice-deploy down
TimeoutStartSec=0
Restart=on-failure
StartLimitInterval=120
StartLimitBurst=2
[Install]
WantedBy=multi-user.target%
Create .env file according to existing or state-to-be Installation:
DATADIR=/data/bluespice
VERSION=4.5
EDITION=pro
BACKUP_HOUR=04
WIKI_NAME=BlueSpice
WIKI_LANG=en
WIKI_PASSWORDSENDER=wiki@localhost
WIKI_EMERGENCYCONTACT=wiki@localhost
WIKI_HOST=wiki.company.local
WIKI_PORT=443
WIKI_PROTOCOL=https
DB_USER=
DB_PASS=
DB_HOST=database
DB_NAME=bluespice
DB_PREFIX=
SMTP_HOST=
SMTP_PORT=
SMTP_USER=
SMTP_PASS=
SMTP_ID_HOST=
Run bluespice-prepare script, helping you set up correct Foder-Structure and Permissions. Also Installing a Service for proper handling of the containers on reboots.
=== Options: ===
===== SSL-Certificates =====
For using Let's Encrypt Certificates just adddocker-compose.proxy-letsencrypt.yml in your bluespice-deploy file
For using self-signend Certificates please put<code><bluespice-wiki.com>.crt</code> and <code><bluespice-wiki.com>.key</code> with the exact name of your Wikis URL in <code>${VOLUMES_DIR}/nginx/certs</code>
If Activating SSL after first creation of Wiki please change <code>$wgServer</code> in <code>${VOLUMES_DIR}/bluespice-data/LocalSettings.php</code>
to <code><nowiki>https://bluespice-wiki.com</nowiki></code>
also link your certificate to the bluespice-container in your docker-compose.yaml-File:
<code>- ${VOLUMES_DIR}/nginx/certs/<FQDNofyourWiki>.crt:/usr/local/share/ca-certificates/<FQDNofyourWiki>.crt:ro</code>
Please restart Containers after changing/adding SSL-Files

Revision as of 14:51, 13 September 2024

Migration from 4.4With BlueSpice 4.5 there were important changes to the container portfolio:
  1. There are no "all-in-one" containers anymore. Neither for FREE, not for PRO and FARM editions
  2. The "distributed-services" setup for PRO and FARM edition has been reworked

If you are upgrading from one of the above-mentioned setups, please refer to the migration guide


Overview

The BlueSpice application consists of a number of different services. To ease installations, they are available as a pre-configured stack at github.com/hallowelt/bluespice-deploy, but they also allow more flexibility, e.g. by providing a simple way to run several services on different machines or to re-use existing services.

drawio: Setup_Installation_Guide_Docker-01
Service name Description FREE PRO FARM
wiki The main application. It features two main modes: "web", for the connection to the client and "task" for any background processing and administrative purposes. It comes in different editions (FREE, PRO and FARM). YES YES YES
pdf Allows to create PDF filesfrom wikipages YES YES YES
search Allows to perform a fulltext search on the wiki content YES YES YES
formula Allows to show mathematical and chemical formulas in the wiki content NO YES YES
collabpads Allows for simultaneous editing of wikipages NO YES YES
collabpads-database Stores the data for simultaneous editing sessions. NO YES YES
diagram Allows to create and edit diagram images in the wiki content NO YES YES
pagepreview Allows to show preview images of wikipages YES YES YES
cache Supports application performance YES YES YES
database Stores the application data YES YES YES
proxy Manages the clients's access to the different services. Provides SSL capabilities YES YES YES
kerberos-proxy Allows to set up a Kerberos-based authentication mechanism NO OPTIONAL OPTIONAL

Generic services that can be substituted by already available ones are

  • database →Can be replaced by any version compatible MariaDB / MySQL server
  • collabpads-database →Can be replaced by any version compatible MongoDB server
  • cache →Can be replaced by any version compatible MemcacheD server
  • search →Can be replaced by any version compatible OpenSearch server
  • proxy -> Can be replaced by any appropriately configured Proxy server / Loadbalancer


Installation

Get actual docker-compose-Files from https://bluespice.com/de/download/

wget https://bluespice.com/filebase/docker-deployment-script && unzip docker-deployment-script && cd docker-deployment-script/compose
Filename Type obligatory Comment
bluespice-deploy bash-script false Wrapper for general start-up of needed Containers
bluespice-prepare bash-script false Prepare Folder and Permissions before first start also creates service
bluespice.service service-script false Porper handling of the Containers on reboot
docker-compose.main.yml yml true Main Services/ run by bluespice-deploy
docker-compose.persistent-data-services.yml yml true Database and Search/ run by bluespice-deploy
docker-compose.stateless-services.yml yml false but strongly recommended for full functionality PDF-Renderer/Cache/Formula/Diagram-Service
docker-compose.proxy.yml yml false but recommended Proxy Service
docker-compose.proxy-letsencrypt.yml yml false Additional autorenewal service for LetsEncrypt-Certificates
docker-compose.kerberos-proxy.yml yml false Additional Proxy for Kerberos-Authenication

The bluespice-deploy script starts the first 4 yml-Files by default.

% cat bluespice-deploy                                                 

docker compose \
	-f docker-compose.main.yml \
	-f docker-compose.persistent-data-services.yml \
	-f docker-compose.stateless-services.yml \
	-f docker-compose.proxy.yml \
	$@

To add additional Services either change script or just add them by hand:

bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -d

for bluespice.service please do also either expand the line in the etc/systemd/system/bluespice.service:

[Unit]
Description=BlueSpice-Docker startup routinie
Requires=docker.service
After=docker.service

[Service]
WorkingDirectory=<WORKDIR>
ExecStart=<WORKDIR>/bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -f -d --remove-orphans
ExecStop=bluespice-deploy down
TimeoutStartSec=0
Restart=on-failure
StartLimitInterval=120
StartLimitBurst=2

[Install]
WantedBy=multi-user.target%

Create .env file according to existing or state-to-be Installation:

DATADIR=/data/bluespice
VERSION=4.5
EDITION=pro
BACKUP_HOUR=04

WIKI_NAME=BlueSpice
WIKI_LANG=en
WIKI_PASSWORDSENDER=wiki@localhost
WIKI_EMERGENCYCONTACT=wiki@localhost
WIKI_HOST=wiki.company.local
WIKI_PORT=443
WIKI_PROTOCOL=https

DB_USER=
DB_PASS=
DB_HOST=database
DB_NAME=bluespice
DB_PREFIX=

SMTP_HOST=
SMTP_PORT=
SMTP_USER=
SMTP_PASS=
SMTP_ID_HOST=

Run bluespice-prepare script, helping you set up correct Foder-Structure and Permissions. Also Installing a Service for proper handling of the containers on reboots.

Options:

SSL-Certificates

For using Let's Encrypt Certificates just adddocker-compose.proxy-letsencrypt.yml in your bluespice-deploy file

For using self-signend Certificates please put<bluespice-wiki.com>.crt and <bluespice-wiki.com>.key with the exact name of your Wikis URL in ${VOLUMES_DIR}/nginx/certs

If Activating SSL after first creation of Wiki please change $wgServer in ${VOLUMES_DIR}/bluespice-data/LocalSettings.php

to https://bluespice-wiki.com

also link your certificate to the bluespice-container in your docker-compose.yaml-File:

- ${VOLUMES_DIR}/nginx/certs/<FQDNofyourWiki>.crt:/usr/local/share/ca-certificates/<FQDNofyourWiki>.crt:ro

Please restart Containers after changing/adding SSL-Files



To submit feedback about this documentation, visit our community forum.