Skip to content
This repository was archived by the owner on Mar 9, 2023. It is now read-only.

Installation and Upgrade instructions (docker based)

Ryan Tharp edited this page Jan 30, 2020 · 3 revisions

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 LMPCS

  • git clone https://github.com/neuroscr/loki-messenger-public-server.git

install LMPCS git submodules

  • cd loki-messenger-public-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

get your PUBKEY

  • replace PUBKEY with your key and run echo "PUBKEY=true" >> loki.ini

start it

Replace [email protected] 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 protected] DOMAIN=yourssl.domain.tld docker-compose up -d

Upgrade instruction

  • make sure you're in the loki-messenger-public-server directory
  • [email protected] DOMAIN=yourssl.domain.tld docker-compose down to stop it from running
  • git pull to grab the latest source and configs
  • git submodule update to grab any platform changes
  • [email protected] DOMAIN=yourssl.domain.tld docker-compose build to update the local docker images
  • [email protected] DOMAIN=yourssl.domain.tld docker-compose up -d to restart the server
Clone this wiki locally