3.0 KiB
Requirements
- Hosting with a public IP address
- make sure you have a working DNS hostname that points to your public IP address.
- an email address (LetsEncrypt requires this)
- 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)
Installation
1. Install docker (debian)
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/
remove any possibly previously installed docker installations
sudo apt-get remove docker docker-engine docker.io
install official docker repo
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
For Debian
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"
For Ubuntu
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"
install and test docker
apt-get update
sudo apt-get install docker-ce
- To check to make sure it's all working:
docker run hello-world
2. Install docker-compose
create docker-compose script
curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
make sure it's executable
chmod u+x /usr/local/bin/docker-compose
3. Install SOGS
git clone https://github.com/loki-project/session-open-group-server.git
install SOGS git submodules
cd session-open-group-server
git submodule init
git submodule update
make sure permissions on acme.json is correct
chmod 600 docker/acme.json
set up config
cp loki_template.ini loki.ini
Give your Session ID moderator access
- replace PUBKEY with your Session ID and run
echo "PUBKEY=true" >> loki.ini
start it
Replace your@email.tld
with your email address and yourssl.domain.tld
with your public facing hostname. These are required for getting an SSL certification from LetsEncrypt which we will attempt to automatically do for you.
EMAIL=your@email.tld DOMAIN=yourssl.domain.tld docker-compose up -d
Upgrade instruction
- make sure you're in the
loki-messenger-public-server
directory EMAIL=your@email.tld DOMAIN=yourssl.domain.tld docker-compose down
to stop it from runninggit pull
to grab the latest source and configsgit submodule init
to grab any submodule changesgit submodule update
to grab any platform/nodepomf changesEMAIL=your@email.tld DOMAIN=yourssl.domain.tld docker-compose build
to update the local docker imagesEMAIL=your@email.tld DOMAIN=yourssl.domain.tld docker-compose up -d
to restart the server