E-Mail Versand fehlgeschlagen, endgültiger Fehler: Fehler - End of file erreicht

E-Mail-Versand fehlgeschlagen, endgültiger Fehler: Fehler - Ende der Datei erreicht

Installation

Die Installationsmethode finden Sie in diesem Artikel.
Ich hatte zuerst 1p und dann das Forum installiert, aber ich habe die Ports 80/443 im Voraus freigegeben.

Fehler

Die E-Mail-Informationen im Admin-Panel zeigen:

Pop-up-Fenster für fehlgeschlagenen Versand:
(Kann nicht bereitgestellt werden, ich kann nur ein Bild hochladen, aber der Inhalt des Fehler-Pop-ups ist Fehler - Ende der Datei erreicht)

Zusätzliche Informationen

Für E-Mails wird der 163-E-Mail-Dienst direkt mit SMTP verwendet. Viele Leute empfehlen, E-Mails mit eigener Domain zu verwenden, aber wir sind ein wenig arm.
Ich erinnere mich, dass der 587 TLS von NetEase E-Mail Probleme hat (das ursprüngliche System verwendete 465 für den Versand, ich denke, das hat einen gewissen Sinn).
Einige Teile der Konfiguration wurden durch Nachschlagen von Informationen und KI geändert, hauptsächlich diese Stellen:

DISCOURSE_SMTP_ENABLE_SSL: true
DISCOURSE_SMTP_ENABLE_START_TLS: false
DISCOURSE_SMTP_AUTHENTICATION_TYPE: login

app.yml Konfiguration

## Dies ist die All-in-One-Standalone-Discourse-Docker-Container-Vorlage
##
## Nach Änderungen an dieser Datei MÜSSEN Sie neu erstellen
## /var/discourse/launcher rebuild app
##
## SEIEN SIE *SEHR* VORSICHTIG BEIM BEARBEITEN!
## YAML-DATEIEN SIND SEHR, SEHR EMPFINDLICH GEGENÜBER FEHLERN BEI LEERZEICHEN ODER AUSRICHTUNG!
## Besuchen Sie http://www.yamllint.com/, um diese Datei bei Bedarf zu validieren.

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  ## Kommentar entfernen, um den IPv6-Listener zu aktivieren
  #- "templates/web.ipv6.template.yml"
  - "templates/web.ratelimited.template.yml"
  ## Kommentar entfernen, wenn Sie Lets Encrypt (https) hinzufügen möchten
  - "templates/web.ssl.template.yml"
  - "templates/web.letsencrypt.ssl.template.yml"

## Welche TCP/IP-Ports soll dieser Container bereitstellen?
## Wenn Discourse einen Port mit einem anderen Webserver wie Apache oder nginx teilen soll,
## siehe https://meta.discourse.org/t/17247 für Details
expose:
  - "80:80"   # http
  - "443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

  ## Setzen Sie db_shared_buffers auf maximal 25% des Gesamtspeichers.
  ## wird automatisch von bootstrap basierend auf dem erkannten RAM eingestellt, oder Sie können überschreiben
  db_shared_buffers: "2048MB"

  ## kann die Sortierleistung verbessern, erhöht aber den Speicherverbrauch pro Verbindung
  #db_work_mem: "40MB"

  ## Welche Git-Revision soll dieser Container verwenden? (Standard: tests-passed)
  #version: tests-passed

env:
  LC_ALL: en_US.UTF-8
  LANG: en_US.UTF-8
  LANGUAGE: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## Wie viele gleichzeitige Webanfragen werden unterstützt? Hängt von Speicher und CPU-Kernen ab.
  ## wird automatisch von bootstrap basierend auf den erkannten CPUs eingestellt, oder Sie können überschreiben
  UNICORN_WORKERS: 8

  ## TODO: Der Domainname, unter dem diese Discourse-Instanz erreichbar sein wird
  ## Erforderlich. Discourse funktioniert nicht mit einer reinen IP-Nummer.
  DISCOURSE_HOSTNAME: bbs.furina.chat

  ## Kommentar entfernen, wenn Sie möchten, dass der Container mit demselben
  ## Hostnamen (-h Option) wie oben angegeben gestartet wird (Standard "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: Komma-getrennte Liste von E-Mails, die beim ersten Login Administrator und Entwickler werden
  ## Beispiel 'user1@example.com,user2@example.com'
  DISCOURSE_DEVELOPER_EMAILS: 'images8023@163.com'

  ## TODO: Der SMTP-Mailserver, der zur Validierung neuer Konten und zum Senden von Benachrichtigungen verwendet wird
  # SMTP-ADRESSE, Benutzername und Passwort sind erforderlich
  # WARNUNG: Das Zeichen '#' im SMTP-Passwort kann Probleme verursachen!
  DISCOURSE_SMTP_ADDRESS: smtp.163.com
  DISCOURSE_SMTP_PORT: 465
  DISCOURSE_SMTP_USER_NAME: phantasm_ai@163.com
  DISCOURSE_SMTP_PASSWORD: "(Sicherheitstoken)"
  DISCOURSE_SMTP_ENABLE_SSL: true
  DISCOURSE_SMTP_ENABLE_START_TLS: false           # (optional, Standard true)
  DISCOURSE_SMTP_DOMAIN: 163.com # (von einigen Anbietern erforderlich)
  DISCOURSE_NOTIFICATION_EMAIL: phantasm_ai@163.com
  DISCOURSE_SMTP_AUTHENTICATION_TYPE: login

  ## Wenn Sie die Lets Encrypt-Vorlage hinzugefügt haben, kommentieren Sie unten, um ein kostenloses SSL-Zertifikat zu erhalten
  LETSENCRYPT_ACCOUNT_EMAIL: images8023@163.com

  ## Die HTTP- oder HTTPS-CDN-Adresse für diese Discourse-Instanz (konfiguriert zum Abrufen)
  ## siehe https://meta.discourse.org/t/14857 für Details
  #DISCOURSE_CDN_URL: https://discourse-cdn.example.com

  ## Die MaxMind Geolocation IP-Konto-ID und der Lizenzschlüssel für IP-Adressabfragen
  ## siehe https://meta.discourse.org/t/-/173941 für Details
  #DISCOURSE_MAXMIND_ACCOUNT_ID: 123456
  #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456

## Der Docker-Container ist zustandslos; alle Daten werden in /shared gespeichert
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

## Plugins kommen hierher
## siehe https://meta.discourse.org/t/19157 für Details
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-solved
          - git clone https://github.com/discourse/discourse-reactions

## Alle benutzerdefinierten Befehle, die nach dem Erstellen ausgeführt werden sollen
run:
  - exec: echo "Beginn der benutzerdefinierten Befehle"
  ## Wenn Sie die E-Mail-Adresse des Absenders für Ihre erste Registrierung festlegen möchten, kommentieren Sie sie aus und ändern Sie sie:
  ## Nach Erhalt der ersten Registrierungs-E-Mail kommentieren Sie die Zeile wieder aus. Sie muss nur einmal ausgeführt werden.
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
  - exec: echo "Ende der benutzerdefinierten Befehle"

Es wird empfohlen, die E-Mail-Adresse zu wechseln. Die internationale Version von Lark (Feishu) hat ein kostenloses Kontingent von 15.000 E-Mails pro Monat. Schauen Sie sich meinen Beitrag an, wenn Sie Fragen haben, können Sie hier zur Diskussion kommen.

https://starorigin.net/t/topic/218