-
Notifications
You must be signed in to change notification settings - Fork 18
Advanced Installation and Upgrade instructions (docker based)
This configuration just runs the backend for a open group server (with no SSL termination). This allow you to put a webserver (that supports reverse proxying) infront of the open group server, so you could:
- host a different website on the same public ip
- run multiple copies of the open group server on different ports
This mode runs in HTTP, and Session clients currently require HTTPS, so your webserver must handle the SSL/HTTPS termination.
- Hosting with a public IP address
- make sure you have a working DNS hostname that points to your public IP address.
- We recommend you have at least 4GB of free disk space and 512mb of ram (it may runs with less but use at your own risk)
for non-debian-based installation instructions of Docker: https://docs.docker.com/v17.12/install/#server
Use this guide for additional troubleshooting help: https://docs.docker.com/v17.12/install/linux/docker-ce/debian/#set-up-the-repository or https://docs.docker.com/v17.12/install/linux/docker-ce/ubuntu/
sudo apt-get remove docker docker-engine docker.io
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
apt-get update
sudo apt-get install docker-ce
- To check to make sure it's all working:
docker run hello-world
curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod u+x /usr/local/bin/docker-compose
git clone https://github.com/loki-project/session-open-group-server.git
cd session-open-group-server
git submodule init
git submodule update
chmod 600 docker/acme.json
cp loki_template.ini loki.ini
- replace PUBKEY with your Session ID and run
echo "PUBKEY=true" >> loki.ini
Replace yourssl.domain.tld
with your public facing hostname. These are currently required for attachments to work properly. If you're running an additional open group server, feel free to change the port to bind to, as you won't want any conflicts and be sure your reverse proxy knows which one is which.
DOMAIN=yourssl.domain.tld PORT=7070 docker-compose -f docker-compose-backend.yml up -d
- make sure you're in the
session-open-group-server
directory -
DOMAIN=yourssl.domain.tld PORT=7070 docker-compose -f docker-compose-backend.yml down
to stop it from running -
git pull
to grab the latest source and configs -
git submodule init
to grab any submodule changes -
git submodule update
to grab any platform/nodepomf changes -
DOMAIN=yourssl.domain.tld PORT=7070 docker-compose -f docker-compose-backend.yml build
to update the local docker images -
DOMAIN=yourssl.domain.tld PORT=7070 docker-compose -f docker-compose-backend.yml up -d
to restart the server