From f38c49cdd555e259bdf3912757423e0651bb6f59 Mon Sep 17 00:00:00 2001 From: Niklas Meyer Date: Fri, 4 Feb 2022 12:24:30 +0100 Subject: [PATCH] added missing gogs third-party site --- docs/third_party/third_party-gogs.de.md | 53 +++++++++++++++++++++++++ docs/third_party/third_party-gogs.en.md | 52 ++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 docs/third_party/third_party-gogs.de.md create mode 100644 docs/third_party/third_party-gogs.en.md diff --git a/docs/third_party/third_party-gogs.de.md b/docs/third_party/third_party-gogs.de.md new file mode 100644 index 000000000..bc7676f03 --- /dev/null +++ b/docs/third_party/third_party-gogs.de.md @@ -0,0 +1,53 @@ +Mit Gogs' Fähigkeit, sich über SMTP zu authentifizieren, ist es einfach, es mit mailcow zu verbinden. Es sind nur wenige Änderungen erforderlich: + +1\. Öffne `docker-compose.override.yml` und füge Gogs hinzu: + +``` +version: '2.1' +services: + + gogs-mailcow: + image: gogs/gogs + volumes: + - ./data/gogs:/data + networks: + mailcow-network: + aliases: + - gogs + ports: + - "${GOGS_SSH_PORT:-127.0.0.1:4000}:22" +``` + +2\. Erstelle `data/conf/nginx/site.gogs.custom`, füge hinzu: +``` +location /gogs/ { + proxy_pass http://gogs:3000/; +} +``` + +3\. Öffne `mailcow.conf` und definiere die Bindung, die Gogs für SSH verwenden soll. Beispiel: + +``` +GOGS_SSH_PORT=127.0.0.1:4000 +``` + +5\. Führen Sie `docker-compose up -d` aus, um den Gogs-Container hochzufahren und führen Sie anschließend `docker-compose restart nginx-mailcow` aus. + +6\. Öffnen Sie `http://${MAILCOW_HOSTNAME}/gogs/`, zum Beispiel `http://mx.example.org/gogs/`. Für Datenbank-Details setzen Sie `mysql` als Datenbank-Host. Verwenden Sie den in mailcow.conf gefundenen Wert von DBNAME als Datenbankname, DBUSER als Datenbankbenutzer und DBPASS als Datenbankpasswort. + +7\. Sobald die Installation abgeschlossen ist, loggen Sie sich als Administrator ein und setzen Sie "Einstellungen" -> "Autorisierung" -> "SMTP aktivieren". SMTP-Host sollte `postfix` mit Port `587` sein, setzen Sie `Skip TLS Verify`, da wir ein nicht gelistetes SAN verwenden ("postfix" ist höchstwahrscheinlich nicht Teil Ihres Zertifikats). + +8\. Erstellen Sie `data/gogs/gogs/conf/app.ini` und setzen Sie die folgenden Werte. Sie können [Gogs cheat sheet](https://gogs.io/docs/advanced/configuration_cheat_sheet) für ihre Bedeutung und andere mögliche Werte konsultieren. + +``` +[server] +SSH_LISTEN_PORT = 22 +# Für GOGS_SSH_PORT=127.0.0.1:4000 in mailcow.conf, setzen: +SSH_DOMAIN = 127.0.0.1 +SSH_PORT = 4000 +# Für MAILCOW_HOSTNAME=mx.example.org in mailcow.conf (und Standard-Ports für HTTPS), setzen: +ROOT_URL = https://mx.example.org/gogs/ +``` + +9\. Starten Sie Gogs neu mit `docker-compose restart gogs-mailcow`. Ihre Benutzer sollten in der Lage sein, sich mit von mailcow verwalteten Konten einzuloggen. + diff --git a/docs/third_party/third_party-gogs.en.md b/docs/third_party/third_party-gogs.en.md new file mode 100644 index 000000000..2f817f2f8 --- /dev/null +++ b/docs/third_party/third_party-gogs.en.md @@ -0,0 +1,52 @@ +With Gogs' ability to authenticate over SMTP it is trivial to integrate it with mailcow. Few changes are needed: + +1\. Open `docker-compose.override.yml` and add Gogs: + +``` +version: '2.1' +services: + + gogs-mailcow: + image: gogs/gogs + volumes: + - ./data/gogs:/data + networks: + mailcow-network: + aliases: + - gogs + ports: + - "${GOGS_SSH_PORT:-127.0.0.1:4000}:22" +``` + +2\. Create `data/conf/nginx/site.gogs.custom`, add: +``` +location /gogs/ { + proxy_pass http://gogs:3000/; +} +``` + +3\. Open `mailcow.conf` and define the binding you want Gogs to use for SSH. Example: + +``` +GOGS_SSH_PORT=127.0.0.1:4000 +``` + +5\. Run `docker-compose up -d` to bring up the Gogs container and run `docker-compose restart nginx-mailcow` afterwards. + +6\. Open `http://${MAILCOW_HOSTNAME}/gogs/`, for example `http://mx.example.org/gogs/`. For database details set `mysql` as database host. Use the value of DBNAME found in mailcow.conf as database name, DBUSER as database user and DBPASS as database password. + +7\. Once the installation is complete, login as admin and set "settings" -> "authorization" -> "enable SMTP". SMTP Host should be `postfix` with port `587`, set `Skip TLS Verify` as we are using an unlisted SAN ("postfix" is most likely not part of your certificate). + +8\. Create `data/gogs/gogs/conf/app.ini` and set following values. You can consult [Gogs cheat sheet](https://gogs.io/docs/advanced/configuration_cheat_sheet) for their meaning and other possible values. + +``` +[server] +SSH_LISTEN_PORT = 22 +# For GOGS_SSH_PORT=127.0.0.1:4000 in mailcow.conf, set: +SSH_DOMAIN = 127.0.0.1 +SSH_PORT = 4000 +# For MAILCOW_HOSTNAME=mx.example.org in mailcow.conf (and default ports for HTTPS), set: +ROOT_URL = https://mx.example.org/gogs/ +``` + +9\. Restart Gogs with `docker-compose restart gogs-mailcow`. Your users should be able to login with mailcow managed accounts. \ No newline at end of file