Selbsthosting kostenlos (mit Einschränkungen!) mit Oracle Cloud

https://blogs.oracle.com/developers/install-run-discourse-for-free-in-the-oracle-cloud

Dieser Blogbeitrag stammt vom letzten Jahr. Ich habe hier keinen Hinweis darauf gefunden; ich denke, Oracle als Hosting-Anbieter ist für die meisten Menschen nicht im Fokus.

Bevor ich meinen Beitrag veröffentlichte, habe ich daher beschlossen, es selbst auszuprobieren, um zu sehen, ob es wirklich machbar ist. Ich habe eine Demo-Seite erstellt:

https://www.opendiscussion.pw

Ich habe mich für ein Konto bei Oracle Cloud angemeldet. Es hieß, die Validierung des Kontos würde 15 Minuten dauern, aber ich musste aufgrund eines Problems mit meiner Kreditkarte zwei Tage warten (für die Validierung wird eine Kreditkarte verlangt).

Ich habe die Anweisungen im Blogbeitrag befolgt und dann die normalen Docker-Installationsanweisungen für Discourse. Es hat fast beim ersten Versuch funktioniert! Ich hatte ein Problem mit der E-Mail-Einrichtung. Ich denke, dies ist der einzige Teil, der im Blogbeitrag nicht korrekt erklärt wird. Ich musste die Dokumentation lesen. Die Oracle-Dokumentation ist sehr gut.

Hier ist, was diese Stufe umfasst:

  • 2 (zwei) VMs
    Die VM verfügt über 1/8 einer OCPU mit der Möglichkeit, zusätzliche CPU-Ressourcen zu nutzen. VM.Standard.E2.1.Micro. 2,0 GHz AMD EPYC 7551
    Arbeitsspeicher: 1 GB

  • Bandbreite: 10 TB

  • Speicher: 100 GB Blockvolume

  • E-Mail: 1.000 / Monat (SMTP ist nicht enthalten)

31 „Gefällt mir“

Noteworthy is the configuration Oracle gives you has ~40gb disk (for OS and userdata) plus 8gb swap partition. No need for a swap file. And since you can get two VMs on the “always free” level, separating the database container is a scaling option.

(For some reason the free database PaaS there isn’t Postgres. :wink: )

6 „Gefällt mir“

Thank you for this interesting information!

I also had a problem. I tried multiple times without any success (“wrong cryptogram” message from my bank, though the cryptogram was right).
I tried in another browser and it worked, I just used another email address… And now it has been several hours that I’m waiting for my account to be validated.

It’s free but the registration process is a bit annoying… :sweat_smile:

1 „Gefällt mir“

Was genau war am E-Mail-Teil falsch? Ich habe es geschafft, Discourse auf Oracle Cloud zu installieren, aber ich bekomme die E-Mail-Zustellung einfach nicht zum Laufen. Wenn ich den Admin-Benutzer bei der Installation von Discourse registrieren möchte, erhalte ich niemals eine E-Mail.

Discourse-doctor verbindet sich mit dem Oracle-SMTP-Server, aber die E-Mail wird nicht gesendet.

Ich habe der Sicherheit halber viele genehmigte Absender eingerichtet. Meine Admin-E-Mail, noreply@[forum domain] und noreply@[main domain]. Welches ist das Wichtigste?

Ich habe zudem einen TXT-Eintrag in den DNS-Einstellungen meiner Domain mit dem empfohlenen SPF-String hinzugefügt.

1 „Gefällt mir“

Es war knifflig. Wenn ich mich richtig erinnere, hat es bei mir funktioniert, indem ich containers/app.yml geändert habe:

  ## Wenn Sie die E-Mail-Adresse 'From' für Ihre erste Registrierung festlegen möchten, entfernen Sie das Kommentarzeichen und ändern Sie:
  ## Nach Erhalt der ersten Anmelde-E-Mail kommentieren Sie die Zeile erneut aus. Sie muss nur einmal ausgeführt werden.
  - exec: rails r "SiteSetting.notification_email='noreply@opendiscussion.pw'"
2 „Gefällt mir“

Danke für die Antwort!

Leider hat das nicht geholfen (auch nach einem erneuten Aufbau der App).

Darf ich fragen, wie Ihre TXT-Einträge aussehen?

Haben Sie auch die Einstellung „START TLS“ nicht auskommentiert?

1 „Gefällt mir“

Also, was hast du mit der E-Mail gemacht? Musst du dafür bezahlen? (weil du gesagt hast, SMTP ist nicht enthalten)

1 „Gefällt mir“

SMTP ist enthalten. Früher war es nicht in allen Regionen so. Es ist einfach verdammt schwer einzurichten … :neutral_face:

2 „Gefällt mir“

Wissen Sie, ob es in Oracle Cloud ein SMTP-Protokoll gibt? Ich möchte herausfinden, warum die E-Mail nicht gesendet wird, obwohl ich problemlos eine Verbindung zum SMTP-Server herstellen kann. Warum ich nicht autorisiert bin oder was das Problem sonst sein könnte.

1 „Gefällt mir“

Oracle Cloud bietet einen SMTP-Service an, der jedoch nicht im Always Free-Tarif enthalten ist. Er ist sehr günstig (0,085 USD pro 1000 E-Mails), daher nutze ich ihn trotzdem. Bisher wurde mir noch nichts in Rechnung gestellt.

https://www.oracle.com/cloud/networking/email-delivery.html#pricing

https://docs.cloud.oracle.com/en-us/iaas/Content/Email/Concepts/overview.htm

2 „Gefällt mir“

Mein Fehler, du hast recht. Mir war nicht klar, dass ich für die kostenpflichtige Version auf Probe gestellt wurde, da ich mich für den kostenlosen Tarif angemeldet habe.

Gibt es kostenlose alternative SMTP-Dienste, die mit Discourse funktionieren, während Discourse selbst auf Oracle Cloud läuft?

3 „Gefällt mir“

Ich glaube, der einzige, der noch übrig ist, ist Pricing | Mailjet. Es ist wirklich eine Schande, dass die Mafia aus dem Silicon Valley kostenlose E-Mails aus dem Internet gestohlen hat :smiley:

4 „Gefällt mir“

Nach 1 Monat Versuch, mein Testkonto zum Laufen zu bringen, nachdem der Chat-Support sagte, er könne mir nicht helfen, und der E-Mail-Support ebenfalls nicht half und nur einmal antwortete, wo er sagte, er würde einige Informationen zu meinem Konto sammeln und sich melden – was er jedoch nie tat …

Ich bat einen Freund, ein Konto für mich zu eröffnen, und es funktionierte wie ein Zauber in weniger als 15 Minuten.

Dann habe ich versucht, Discourse zu installieren, und hatte große Schwierigkeiten. Ich folgte dem Oracle Discourse-Installations-Tutorial, aber aus irgendeinem Grund konnte ich keine Verbindung zum Port 443 herstellen.

Ich habe versucht, Discourse auf einem regulären Ubuntu-Image zu installieren, konnte aber aus unbekannten Gründen weder über Port 80 noch über Port 443 eine Verbindung herstellen.

Ich bin zu den offiziellen Anweisungen zurückgekehrt. Zuerst funktionierte es nicht (Verbindung zu beiden Ports schlug fehl), aber nachdem ich Docker neu gestartet hatte, verband es sich plötzlich mit beiden Ports.

Meine Erfahrung ist also nicht die beste, egal ob die Probleme von mir oder von Oracle stammen.

Am Ende habe ich jedoch eine kostenlose, online verfügbare, zwar nicht die schnellste, aber funktionierende Discourse-Installation. :+1:t6:

Für diejenigen, die dasselbe Tutorial befolgen möchten: Im Abschnitt zur Server-Firewall gibt es einen kleinen Fehler.

Statt:
sudo firewall-cmd —reload

müssen Sie schreiben:
sudo firewall-cmd --reload

6 „Gefällt mir“

Standardmäßig können Sie Discourse nicht installieren, da Verbindungen zu den Ports 80 und 443 nicht erlaubt sind. Sie müssen beide im Sicherheitsliste (im Oracle-Kontrollpanel) und der Instanz-Firewall (per SSH) freigeben.

So gehen Sie bei einer regulären Ubuntu-Installation vor (es unterscheidet sich leicht von deren offizieller Anleitung, die ein anderes Linux-Image verwendet).

Im Oracle-Panel:

Nachdem Sie Ihre Ubuntu-Instanz erstellt haben, gehen Sie zu Instanz-Details und klicken auf den Subnet-Link:

Klicken Sie auf die Sicherheitsliste:

Klicken Sie auf Eingangsregeln hinzufügen, wählen Sie das TCP-Protokoll, setzen Sie die Quell-CIDR auf 0.0.0.0/0 und den Zielportbereich auf 80,443.
Bestätigen Sie durch Klicken auf „Eingangsregeln hinzufügen“.

Überprüfen Sie, ob die Regeln in der Sicherheitsliste hinzugefügt wurden:

In der Server-Kommandozeile per SSH:

Fügen Sie diese Regeln zu iptables hinzu:

iptables -I INPUT 5 -i ens3 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -i ens3 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT

Der Befehl fügt die Regeln an der richtigen Stelle hinzu. Wenn Sie sie einfach an bestehende Regeln anhängen, ohne die Zeilennummer (5) anzugeben, funktioniert das nicht, da sie von einer vorherigen bestehenden „Alles ablehnen“-Regel überschrieben werden.

Speichern Sie die Regeln, damit sie auch nach einem Neustart erhalten bleiben:

netfilter-persistent save

Jetzt können Sie Discourse installieren! :tada:

8 „Gefällt mir“

Hallo, empfiehlst du Oracle Cloud für eine produktive, stark frequentierte Website?
Vielen Dank

1 „Gefällt mir“

Ich denke, du kannst eine kleine Community hosten, wenn dir und deinen Nutzern die Forumsgeschwindigkeit nicht so wichtig ist.
Ich würde es jedoch nicht empfehlen, da du günstige Hosting-Anbieter (~5 $/Monat) mit deutlich besseren Spezifikationen finden kannst.

@Hector, wird https://www.opendiscussion.pw immer noch auf einem kostenlosen Server gehostet?

4 „Gefällt mir“

Hi, meinst du mit einem günstigen Hosting für ~5 /Monat den Digital Ocean Droplet für 5 ?

1 „Gefällt mir“

Ja, zum Beispiel.

Persönlich mag ich Hetzner, weil sie nicht teuer sind und ihre Server stundenweise abgerechnet werden, was sich hervorragend für kurze Tests eignet. Allerdings haben sie meiner Meinung nach nur Server in Europa.

3 „Gefällt mir“

Ja, immer noch auf dem kostenlosen Server. Es hat keinen einzigen Besucher, also kann ich nicht sagen, wozu er fähig ist. Ich verwende ihn auch für die Entwicklung. Bisher läuft alles gut.

3 „Gefällt mir“

Muss ich bei Hetzner VPS auch LAMP installieren, Server-Updates durchführen und auf Hacker achten usw.?

Bei Digital Ocean hingegen ist alles vorbereitet. Ich muss den Server nicht absichern, sondern nur Discourse installieren und verwalten? Ist das der eigentliche Unterschied zwischen Digital Ocean und anderen VPS-Anbietern?

Ist Digital Ocean wie ein verwalteter VPS?

Vielen Dank!
Deb

1 „Gefällt mir“