Installation Docker
Beschreibung:
Installation mit Docker und self signed Zertifikat (Auch wenn es nur 7 Tage gültig ist, neustart webserver verlängert das ganze)
Dazu erstellen wir im Anschluss ein systemd Dienst der alle 6 Tage , Also vor Ablauf, Vorsicht ist die Mutter der Porzelankiste, den Conatiner neustartet. Man kann natürlich auch Lets encrypt verwenden, dazu die Caddyfile anpassen mit Domain und tls email.
Dann braucht man den Timer nicht mehr. Siehe dazu Buch Caddy
Vorrausetzungen:
apt install curl docker.io docker-compose
Installation:
Verzeichnisse Erstellen
mkdir -p /root/rei3/caddy_data
mkdir -p /root/rei3/caddy_config
mkdir -p /root/rei3/data_db
mkdir -p /root/rei3/data_app
Unsere Docker Compose Datei
nano /root/rei3/docker-compose.yml
Inhalt:
version: '3.3'
services:
r3_db:
container_name: r${R3_VERSION:-3.8.6}_db
environment:
POSTGRES_DB: ${R3_DB_NAME:-app}
POSTGRES_USER: ${R3_DB_USER:-app}
POSTGRES_PASSWORD: ${R3_DB_PASS:-app}
image: postgres:latest
restart: always
volumes:
- ./root/rei3/data_db:/var/lib/postgresql/data
r3:
build:
context: https://github.com/r3-team/r3_docker.git#main
args:
r3_version: ${R3_VERSION:-3.8.6}
r3_db_host: r3_db
r3_db_name: ${R3_DB_NAME:-app}
r3_db_user: ${R3_DB_USER:-app}
r3_db_pass: ${R3_DB_PASS:-app}
r3_os_arch: x64
im_policy: /etc/ImageMagick-6/policy.xml
container_name: r${R3_VERSION:-3.8.6}_app
image: "r3/${R3_VERSION:-3.8.6}"
depends_on:
- r3_db
#ports:
# - "14000:80"
restart: always
volumes:
- ./root/rei3/data_app:/opt/r3/data
caddy:
image: caddy:latest
container_name: caddy-reverse-proxy
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- ./caddy_data:/data
- ./caddy_config:/config
restart: unless-stopped
Nun die Caddy File
nano /root/rei3/Caddyfile
Inhalt
rei3 {
reverse_proxy http://r3:80
tls self_signed
}