Setup:Installation Guide/Docker: Difference between revisions

No edit summary
Tag: 2017 source edit
No edit summary
Tag: 2017 source edit
Line 12: Line 12:
__TOC__
__TOC__


=== Installation ===
=== Basic installation ===
Get "docker-compose" files from https://bluespice.com/de/download/
Get "docker-compose" files from https://bluespice.com/de/download/
  wget <nowiki>https://bluespice.com/filebase/docker-deployment-script</nowiki> \
  wget <nowiki>https://bluespice.com/filebase/docker-deployment-script</nowiki> \
     && unzip docker-deployment-script \
     && unzip docker-deployment-script \
     && cd docker-deployment-script/compose
     && cd docker-deployment-script/compose
The directory contains the following files:
{| class="wikitable"
{| class="wikitable"
|+
|+
Line 69: Line 71:
|Additional Proxy for Kerberos-Authenication
|Additional Proxy for Kerberos-Authenication
|}
|}
The <code>bluespice-deploy</code> script starts the first four <code>yml</code> files by default.
 
% cat bluespice-deploy                                               
For convenience, the <code>bluespice-deploy</code> script starts the first four <code>yml</code> files by default. This includes the main wiki application and also required backend services, like a database, search and application cache.
 
docker compose \
Additional services can be loaded by adding <code>-f <filename> </code>.
-f docker-compose.main.yml \
 
-f docker-compose.persistent-data-services.yml \
Example:  
-f docker-compose.stateless-services.yml \
  bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -f -d --remove-orphans
-f docker-compose.proxy.yml \
 
$@
This will start the stack with "Let's Encrypt" certificates.
To add additional services either change script or just add them by hand:
 
  bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -d
===Set up operating system service===
For <code>bluespice.service</code> please do also either expand the line in the <code>etc/systemd/system/bluespice.service</code>:
 
[Unit]
{{Textbox
Description=BlueSpice-Docker startup routinie
|boxtype=tip
Requires=docker.service
|header=Adding additional services
After=docker.service
|text=expand the <code>ExecStart</code> parameter in the <code>/etc/systemd/system/bluespice.service</code>
Example:  
[Service]
WorkingDirectory=<WORKDIR>
  ExecStart=<WORKDIR>/bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -f -d --remove-orphans
  ExecStart=<WORKDIR>/bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -f -d --remove-orphans
ExecStop=bluespice-deploy down
|icon=yes
TimeoutStartSec=0
}}
Restart=on-failure
StartLimitInterval=120
StartLimitBurst=2
[Install]
WantedBy=multi-user.target%


===Set up environment variables===
Create <code>.env</code> file according to existing or state-to-be installation.
Create <code>.env</code> file according to existing or state-to-be installation.


Line 126: Line 121:
  SMTP_ID_HOST=...
  SMTP_ID_HOST=...


===Prepare data directories===
Run <code>bluespice-prepare</code> script, helping you set up correct folder structure and permissions. Also installing a service for proper handling of the containers on reboots.
Run <code>bluespice-prepare</code> script, helping you set up correct folder structure and permissions. Also installing a service for proper handling of the containers on reboots.



Revision as of 16:59, 27 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


Basic installation

Get "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

The directory contains the following files:

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

For convenience, the bluespice-deploy script starts the first four yml files by default. This includes the main wiki application and also required backend services, like a database, search and application cache.

Additional services can be loaded by adding -f <filename> .

Example:

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

This will start the stack with "Let's Encrypt" certificates.

Set up operating system service

Adding additional servicesexpand the ExecStart parameter in the /etc/systemd/system/bluespice.service

Example:

ExecStart=<WORKDIR>/bluespice-deploy -f docker-compose.proxy-letsencrypt.yml up -f -d --remove-orphans


Set up environment variables

Create .env file according to existing or state-to-be installation.

Example:

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

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

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

SMTP_HOST=mail.company.local
SMTP_PORT=25
SMTP_USER=...
SMTP_PASS=...
SMTP_ID_HOST=...

Prepare data directories

Run bluespice-prepare script, helping you set up correct folder structure and permissions. Also installing a service for proper handling of the containers on reboots.

Additional options

SSL certificates

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

Self-signed certificatesFor 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.yml-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.