Usa Nginx Proxy Manager per gestire più siti con Discourse

Una piccola guida per installare istanze multiple :disguised_face:

In questo caso, inizieremo con un’installazione pulita del server e potremmo voler ripristinare una vecchia istanza in seguito.

Passaggio 0: Backup!!!

Scarica il backup. Ti servirà più tardi.

Passaggio 1: NGINX Proxy Manager

mkdir -p /opt/nginx-proxy-manager
cd /opt/nginx-proxy-manager
nano docker-compose.yml
version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: always
    ports:
      - '80:80'    # http / riservato!
      - '81:81'    # porta web-admin
      - '443:443'  # https / riservato!
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

e infine: docker-compose up -d

(Per persone ancora più pigre, come me a volte, usa semplicemente casaOS (su qualsiasi porta diversa da ≠ 80/81/443). Assicurati solo di utilizzare credenziali di accesso sicure e un host proxy aggiuntivo con il tuo certificato SSL per un ulteriore livello di sicurezza. Puoi anche impostare alcune regole firewall se sai cosa stai facendo.)

Passaggio 2: Installazione di Docker su server Ubuntu

sudo apt update && apt upgrade -y

sudo apt install apt-transport-https ca-certificates curl software-properties-common
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"

sudo apt update
sudo apt-get install docker-ce docker-ce-cli containerd.io

Passaggio 3: Preparazione dell’installazione di Discourse

git clone https://github.com/discourse/discourse_docker.git /var/discourse

cp /var/discourse/samples/standalone.yml /var/discourse/containers/app1.yml
nano /var/discourse/containers/app1.yml

cp /var/discourse/samples/standalone.yml /var/discourse/containers/app2.yml
nano /var/discourse/containers/app2.yml

Apporta le modifiche necessarie ai tuoi file app.yml. Ciò include diverse porte esposte per ciascuna istanza (sì, puoi usarle anche per la manutenzione), impostazioni di posta elettronica e così via.
es. app1 ottiene la porta 8080/1443 e app2 ottiene la porta 8081/2443 per http/https.

/var/discourse/launcher rebuild app1
/var/discourse/launcher rebuild app2

Passaggio 4: Infine, configura NGINX Proxy Manager

Guarda questo per una comprensione di base dell’utilizzo di NGINX Proxy Manager.

Tutto ciò che devi fare è puntare le tue voci di host proxy a ciascuna istanza (porta http, ad esempio 8080 e 8081 con il tuo IP locale o pubblico, la decisione spetta a te) e sarai in grado di ottenere certificati gratuiti Let’s Encrypt per ogni istanza e dominio. Assicurati solo di abilitare Force SSL e così via.

Passaggio 5: Fatto. Bevi una tazza di caffè.

Nel mio caso funziona perfettamente.

Potrebbero esserci alcuni piccoli problemi con le dipendenze software preinstallate, ma sono sicuro che troverai una soluzione. Non arrabbiarti con me per il mio consiglio su casaOS. Ma per le persone a cui piace giocare con i propri server, utilizzare tutte le risorse disponibili in modo semplice, sicuro e protetto, sono sicuro che troverai interessante questa gestione di Docker.

Passaggio 6: Infine, ripristina i tuoi backup precedenti.

1 Mi Piace