Skip to content

Latest commit

 

History

History
75 lines (51 loc) · 2.62 KB

README.md

File metadata and controls

75 lines (51 loc) · 2.62 KB

jprq server deploy

GitHub

This repository contains example deployment files for self-hosting jprq.

Tools used

SSL certificates setup

# CERTIFICATES contains everything to do with obtaining a dns wildcard certificate
cd CERTIFICATES
ls -gGoh --time-style=+""
#  -rwxrwxr-x 1  370  jprq-certs.sh
#  -rwxrwxr-x 1  166  link-nginx-conf.sh
#  -rw-rw-r-- 1   28  requirements.txt
#  -rw------- 1 1.7K  transip-rsa.key
#  -rw------- 1   79  transip.ini
#  drwxrwxr-x 4 4.0K  venv

I'll go through each of the files:

venv, requirements.txt: virtualenv containing the required dependencies
python3 -m pip install virtualenv
python3 -m virtualenv venv
. venv/bin/activate
pip install -r requirements.txt 
transip.ini and transip-rsa.key

This ini file contains the username that owns the domain you want to request a certificate for. The key contains a private key with access to that account (See API Settings)[https://www.transip.nl/cp/account/api/].

jprq-certs.sh

This script requests a wildcard certificate for the domain specified in the script

link-nginx-conf.sh

Links a letsencrypt config file that nginx uses to /etc/letsencrypt/

nginx/service setup

See the 'nginx' folder for the config files in my sites-enabled. To use them, simply change the domain name 'your.domain.tld' to your actual domain name.

See the 'service' folder for two simple systemctl (/etc/systemd/system/) config files to run the two jprq servers as services. These files also need to be updated with the actual domain name.

(Oracle) network setup

In order for the tcp client to work, all unpriviliged ports (1024 and higher) need to be opened in the firewall.

More info? Docker??

See also