Wie es baut
Ein Dockerfile, falls vorhanden. Andernfalls erkennt Railyard automatisch deine Sprache und dein Framework und wählt eine passende Runtime-Version, ganz ohne Konfiguration.
Für Maintainer
Lass deine Nutzer dein Projekt in wenigen Klicks auf einem Server in ihrem eigenen Cloud-Konto deployen, ohne für jede Plattform einen eigenen Deploy-Guide zu schreiben.
Deploy-Button
Füge die URL deines Repositorys ein. Der Link öffnet Railyards Formular für neue Apps mit bereits ausgefülltem Repository, und dein Nutzer wählt einen Server, der ihm gehört.
Erkennung
Bei einem GitHub-Repository prüft Railyard die Dateien auf dem verlinkten Branch, bevor überhaupt etwas gebaut wird. Probier es auf der Startseite aus mit deinem eigenen Repo, um zu sehen, was erkannt wird.
Ein Dockerfile, falls vorhanden. Andernfalls erkennt Railyard automatisch deine Sprache und dein Framework und wählt eine passende Runtime-Version, ganz ohne Konfiguration.
Web- und Worker-Prozesse, die in deinem Projekt deklariert sind, plus gängige Hintergrund-Worker wie Sidekiq, Solid Queue oder Celery.
Datenbanken und Dienste, von denen dein Projekt abhängt, wie Postgres, MySQL, Redis, MongoDB, Elasticsearch, RabbitMQ, Memcached, ClickHouse oder InfluxDB. Railyard fügt sie hinzu und verdrahtet die Connection-Strings.
Die Umgebungsvariablen, die dein Projekt dokumentiert, damit das Deploy-Formular nur nach den wichtigen fragt.
Wenn du dein Projekt schon auf GitHub Container Registry oder Docker Hub veröffentlichst, kann Railyard dieses Image statt eines Builds ausführen.
railyard.yml
Leg eine railyard.yml im Root deines Repositorys ab, und Railyard nutzt sie statt des Erkannten: die Build-Methode, den Port, einen Release-Befehl, der vor jedem Release läuft, einen Seed-Befehl, deine Prozesse, Standardvariablen und Add-ons. Jeder Schlüssel ist optional. Eine app.json oder render.yaml wird ebenfalls gelesen.
build: dockerfile # auto, dockerfile, railpack, nixpacks or cnb
runtime:
container_port: 3000
release_command: bin/rails db:migrate
seed_command: bin/rails db:seed
processes:
web: bin/rails server
worker: bundle exec sidekiq
env:
RAILS_LOG_TO_STDOUT: "1"
addons: [postgres, redis] Verbinde eine Maschine mit Host, Benutzer und SSH-Key, oder lass Railyard eine in deinem Cloud-Konto anlegen. Railyard installiert den Rest und beobachtet, bis sie online ist.
Kostenloser Plan, keine Kreditkarte, und 14 Tage Pro für jedes neue Team. Ein fester Preis pro Team.