Dies ist der ziemlich traurige Quellcode für die Ghost Town unter https://lobste.rs. Es handelt sich um eine Rails -Codebasis und verwendet ein SQL -Backend (Mariadb in Produktion) für die Datenbank.
Sie können diesen Code frei verwenden, um eine eigene Schwester-Website zu starten, da der Code unter einer lizenzenden Lizenz (3-Klausel-BSD) verfügbar ist. Wir begrüßen Fehlerberichte und Codebeiträge, die zur Verbesserung der Lobste.rs helfen. Als Freiwilligenprojekt zögern wir, Arbeiten zu übernehmen, die für unsere Website nicht nützlich sind. Bitte haben Sie also wissen, ob wir Ihre benutzerdefinierte Funktion nicht übernehmen möchten.
Wir würden gerne Ihre Hilfe haben. Weitere Informationen finden Sie in der Datei mit beitragender Datei. Wenn Sie Fragen haben, gibt es normalerweise jemanden in unserem Chatraum, der mit dem Code vertraut ist.
Verwenden Sie die folgenden Schritte für eine lokale Installation oder Hummer für unsere Produktionsbereitstellungskonfiguration. Es gibt ein externes Projekt Docker-Lobster, wenn Sie Docker verwenden möchten.
Mariadb installieren und starten. Unter Linux verwenden Sie Ihren Paketmanager. Auf macOS können Sie mit Brauen installieren. Unter Windows befindet sich ein Installateur.
Starten Sie den MariADB -Server mit einer der in der MariADB -Wissensbasis genannten Methoden.
Öffnen Sie die Konsole mit mariadb und setzen Sie das root (Geben Sie ctrl-d an, um danach zu beenden).
ALTER USER ' root ' @ ' localhost ' IDENTIFIED BY ' localdev ' ;Installieren Sie die in .Ruby-Version angegebene Ruby-Version
Checkout des Hummers Git Tree von GitHub
$ git clone [email protected]:lobsters/lobsters.git
$ cd lobsters
lobsters$Installieren Sie NodeJs, benötigte (oder andere ExecJs)
Fedora: sudo yum install nodejs
Ubuntu: sudo apt-get install nodejs
OSX: brew install nodejs rails credentials:edit um Ihre verschlüsselte Anmeldeinformationen zu erstellen und zu bearbeiten. Hier speichern Sie API -Schlüssel für externe Dienste und Funktionen wie Verknüpfungskonten. Kopieren und fügen Sie den Inhalt von config/credentials.yml.enc.sample ein und fügen Sie es ein, wenn Sie auf Setups einen neuen zufälligen Wert für secret_key_base erhalten, und Sie können rails secret verwenden, wenn Sie einen anderen generieren müssen.
Führen Sie bin/setup aus, um Abhängigkeiten zu installieren und DB einzurichten
lobsters$ bin/setup Kopieren Sie auf Ihrem Produktionsserver config/initializers/production.rb.sample an config/initalizers/production.rb und passen Sie es mit domain und name Ihrer Website an. (Sie brauchen dies nicht auf Ihrer Entwicklermaschine).
Auf Ihrem PC möchten Sie wahrscheinlich einige Beispieldaten hinzufügen.
lobsters$ rails fake_data Führen Sie den Rails -Server im Entwicklungsmodus aus. Sie sollten in der Lage sein, sich bei Ihrem neuen test bei http://localhost:3000 anzumelden:
lobsters$ rails serverFür die Bereitstellung der Site in der Produktion muss ein Webserver eingerichtet und die App im Produktionsmodus ausgeführt werden. Es stehen mehr Tools und Optionen zur Verfügung, als wir beschreiben können. Finden Sie einen Leitfaden oder einen Experten. Das Hummer-auf-ermöglicht-Repo hat unsere Konfigurationsdateien, von denen er kribelt. Einige App-spezifische Notizen:
Richten Sie Crontab oder einen anderen Scheduler ein, um reguläre Jobs zu leiten:
*/5 * * * * cd /path/to/lobsters && env RAILS_ENV=production sh -c 'bundle exec ruby script/mail_new_activity; bundle exec ruby script/mastodon_sync.rb; bundle exec ruby script/traffic_range'
In der Produktion rennen Sie rails credentials:edit um die Anmeldeinformationen dort einzurichten, wie Sie es für die Entwicklung getan haben. Beim Setup gibt Rails Ihnen einen neuen zufälligen Wert für secret_key_base und Sie können rails secret verwenden, wenn Sie eine andere generieren müssen. GIT NIEMALS git commit oder Teilen Sie Ihre config/credentials.yml.enc !
Sie möchten wahrscheinlich Git-Imerge verwenden, um Änderungen von Hummer zu Ihrer Website zu ziehen.
Grundlegende Moderation erfolgt vor Ort, aber viele Verwaltungsaufgaben erfordern die Verwendung der Rails-Konsole in der Produktion. Administratoren können Tags AT /tags erstellen und bearbeiten.