Direkt zum Hauptinhalt

Installation via docker

Beschreibung:

Bequem über eine docker-compose Datei mit Public Domain Name und Public ip.

Vorbereitung:

Installiere docker und co

apt install curl docker.io docker-compose

Verzeichniss erstellen

mkdir -p /root/freescout/db

Nun einen base64 string erzeugen für die .env

echo "base64:$(openssl rand -base64 32)" 
Ausgabe : base64:0HxGQ72frdcVZ+XyZQ1Q0Kr6FkFGwJS/UeYT/NLtZTo=

Nun die .env anlegen und Daten ändern

nano /root/freescout/.env

Inhalt

# Basis
PUID=1000
PGID=1000
TZ=Europe/Berlin

# App
APP_KEY=base64:deinGeheimerSchlüssel   # mit `php artisan key:generate --show` oder echo "base64:$(openssl rand -base64 32)" erzeugbar 
APP_PORT=8080

# DB
DB_HOST=freescout_db
DB_NAME=freescout
DB_USER=freescout
DB_PASS=supergeheim
SITE_URL=https://freescout.example.com bei Proxy: "http://localhost:5000"
ADMIN_EMAIL=info@example.com
ADMIN_FIRST_NAME=Vorname
ADMIN_LAST_NAME=Nachname
ADMIN_PASS=supergeheim
APPLICATION_NAME=Alternativer name als freescout
# MariaDB
MYSQL_ROOT_PASSWORD=rootpass
MYSQL_DATABASE=freescout
MYSQL_USER=freescout
MYSQL_PASSWORD=supergeheim

#Caddy
PUBLIC_URL ="http://localhost:5000"   
# ändere auf https://freescout.example.com bei Proxy: "http://localhost:5000"   # ändere auf https://freescout.example.com
nano /root/freescout/docker-compose.yml

Inhalt

version: "3.7"
services:
  freescout:
    image: docker.io/tiredofit/freescout:latest
    container_name: freescout
    env_file:
      - .env
    volumes:
      - ./config:/config
    ports:
      - "${APP_PORT}:80"
    depends_on:
      - freescout_db
    restart: unless-stopped

  freescout_db:
    image: mariadb:10.11
    container_name: freescout_db
    env_file:
      - .env
    volumes:
      - ./db:/var/lib/mysql
    restart: unless-stopped

  caddy:
    image: caddy:latest
    restart: always
    ports:
      - "80:80"
      - "443:443"
    command: caddy reverse-proxy --from ${PUBLIC_URL} --to freescout:80
    volumes:
      - ./data/caddy/data:/data
      - ./data/caddy/config:/config

starten

docker-compose up -d

Nun noch die ufw Firewall regeln anpassen.

Da hier der Docker container sowieso von außen erreichbar sein soll, brauchen wir hier keine Anspassung für docker.
Aber ssh soll nur auf der lokalen Netzwerkkarte zur Verfügung stehen

ufw installieren

apt install ufw

Nun die Regeln setzten

ufw allow in on enp6s18 to any port 22
ufw enable