Ruby: Wdrażanie na produkcję

Jak wdrożyć swój kod Ruby na produkcję w kilka minut

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje gotowe do użycia rozwiązanie Ruby cloud, które zapewnia szereg korzyści, w tym:

  • Wdrażaj swoją aplikację w kilka sekund za pomocą prostego git push.
  • Używaj własnej nazwy domeny i korzystaj z automatycznej konfiguracji certyfikatów HTTPS dla zwiększonego bezpieczeństwa.
  • Zyskaj spokój dzięki automatycznym backupom, aktualizacjom jednym kliknięciem oraz prostemu, przejrzystemu i przewidywalnemu cennikowi.
  • Uzyskaj optymalną wydajność i solidne zabezpieczenia dzięki prywatnej, dedykowanej infrastrukturze.

Oszczędzaj czas i uprość sobie życie: wystarczy 5 minut, aby przetestować rozwiązanie Ruby cloud hosting od Stackhero!

Usługa Ruby cloud hosting od Stackhero umożliwia szybkie wdrożenie projektów Ruby na produkcję w zaledwie kilka minut, łącząc wydajną platformę z intuicyjnym doświadczeniem użytkownika.

Oto, co otrzymujesz:

  • Wdrażaj swój kod za pomocą prostego polecenia git push.
  • Używaj własnej domeny z automatycznym zarządzaniem certyfikatem TLS (HTTPS).
  • Uruchamiaj swoją aplikację na dedykowanej, odizolowanej infrastrukturze dla maksymalnego poziomu bezpieczeństwa i prywatności.
  • Korzystaj z obsługi HTTP/2, TLS 1.3 (HTTPS), WebSockets, kompresji GZIP i Brotli, ETag, dostępu do portów TCP i UDP oraz wielu innych funkcji.

Jedyną rzeczą, której potrzebujesz, aby rozpocząć wdrażanie projektów na Stackhero, jest zainstalowany Git na Twoim komputerze.

Jeśli chcesz zaoszczędzić czas lub wolisz uniknąć konfigurowania złożonego środowiska lokalnego, warto sprawdzić Code-Hero od Stackhero.

Code-Hero to gotowa do użycia platforma deweloperska, dostępna bezpośrednio z poziomu przeglądarki na dowolnym komputerze, tablecie lub telefonie. Zbudowana na bazie forka VSCode, zawiera wszystkie niezbędne narzędzia preinstalowane i skonfigurowane, dzięki czemu możesz zacząć kodować natychmiast, bez żadnych problemów z konfiguracją.

<!-- ![Przykład instancji Code-Hero uruchomionej bezpośrednio w przeglądarce](/images/docs/ruby/040_deploy/rubyInCodeHero.png) -->

Wdrażanie aplikacji Ruby na Stackhero to prosty proces. Oto kroki, które należy wykonać – każdy z nich omówimy szczegółowo:

  1. Utwórz usługę Ruby na Stackhero.
  2. Dodaj swój klucz publiczny SSH do konfiguracji usługi Ruby.
  3. Skonfiguruj polecenie git push na swojej platformie deweloperskiej.
  4. Dodaj plik Makefile do swojego projektu.
  5. Wdróż swój kod na produkcję.

Jeśli napotkasz jakiekolwiek problemy podczas wdrażania, dokumentacja Troubleshooting pomoże Ci szybko znaleźć rozwiązanie. Warto tam zajrzeć w pierwszej kolejności, aby zaoszczędzić czas i uniknąć frustracji.

Jeśli nie utworzyłeś jeszcze usługi Stackhero for Ruby, możesz to zrobić z poziomu swojego dashboardu Stackhero w ciągu kilku minut.

Gdy Twoja usługa Ruby jest już uruchomiona, kolejnym krokiem jest dodanie klucza publicznego SSH. Możesz go znaleźć, uruchamiając polecenie:

cat ~/.ssh/id_*.pub

Nie masz jeszcze kluczy SSH?

Możesz je wygenerować poleceniem:

ssh-keygen -t ed25519

Aby dodać klucz SSH, przejdź do dashboardu Stackhero, wybierz swoją usługę Ruby, kliknij "Configure" i wklej swój klucz publiczny w sekcji "SSH public keys".

<!-- ![Przykład konfiguracji usługi Ruby](/images/docs/ruby/040_deploy/rubyStackheroPublicKey.png) -->

Wskazówka: Chcesz zaoszczędzić czas w przyszłości? Dodaj swój klucz publiczny SSH do profilu, aby był automatycznie dodawany do każdej nowej usługi, którą utworzysz.

Wystarczy kliknąć swoje zdjęcie profilowe w prawym górnym rogu dashboardu, wybrać "Your profile" i tam dodać klucz publiczny SSH.

Wdrażanie na Stackhero wykorzystuje Git CLI i polecenie git push, więc nie musisz instalować żadnych dodatkowych narzędzi.

Możesz skopiować polecenie git remote ze strony głównej swojej usługi w dashboardzie Stackhero. Zazwyczaj wygląda ono tak:

git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
<!-- ![Polecenie Git remote Ruby na dashboardzie Stackhero](/images/docs/ruby/040_deploy/rubyStackheroGitRemote.png) -->

Aby Stackhero wiedział, jak uruchomić Twoją aplikację, musisz utworzyć plik Makefile w katalogu głównym projektu. Ten plik definiuje polecenia, które Stackhero wykona podczas wdrożenia.

Jeśli nie miałeś wcześniej do czynienia z Makefile lub poleceniem make, nie martw się – poniższe kroki przeprowadzą Cię przez cały proces.

Utwórz plik Makefile z następującą zawartością:

run:
	rake assets:precompile
	rake db:migrate RAILS_ENV=production
	RAILS_ENV=production bundle exec puma -C config/puma.rb

Co dzieje się w tym Makefile:

  1. Reguła run jest wymagana – Stackhero automatycznie ją wykona podczas wdrożenia. Proszę zachować tę nazwę, ponieważ pełni rolę punktu wejścia.
  2. Polecenia używają rake i bundle, ale możesz je dostosować do potrzeb swojej aplikacji.
  3. Upewnij się, że każda linia polecenia zaczyna się od znaku tabulacji, a nie od spacji. Jeśli pojawi się błąd typu *** missing separator, sprawdź formatowanie.

W powyższym przykładzie wdrożenie wykona:

  1. Prekompilację zasobów takich jak JavaScript i CSS do katalogu public/assets.
  2. Wykonanie niezbędnych migracji bazy danych.
  3. Uruchomienie serwera Puma, który obsłuży Twoją aplikację.

Jesteś gotowy. Aby wdrożyć swój kod na Stackhero, użyj polecenia:

git push stackhero main

Przy pierwszym uruchomieniu tego polecenia zostaniesz poproszony o potwierdzenie odcisku klucza SSH. Wystarczy odpowiedzieć "yes", aby kontynuować.

Po krótkiej chwili Twoja aplikacja będzie dostępna online.

<!-- ![Przykład wdrożenia kodu Ruby na Stackhero za pomocą polecenia `git push`](/images/docs/ruby/040_deploy/rubyDeployGitPush.png) -->

Możesz odwiedzić swoją wdrożoną aplikację pod adresem URL wyświetlonym w dashboardzie Stackhero. Zazwyczaj wygląda on tak: https://<XXXXXX>.stackhero-network.com.

Gratulacje. Twoja aplikacja jest już dostępna na produkcji.

Masz problem z wdrożeniem?

Koniecznie sprawdź sekcję Troubleshooting, gdzie znajdziesz szybkie rozwiązania.

Właśnie dowiedziałeś się, jak wdrożyć kod Ruby na produkcję za pomocą Stackhero – w prosty i wydajny sposób.

Jeśli chcesz dowiedzieć się więcej, dokumentacja Advanced Deployment Usages obejmuje tematy takie jak wdrażanie różnych gałęzi git, konkretnych tagów lub commitów oraz zarządzanie wieloma środowiskami, np. staging i produkcja. Znajdziesz tam także wskazówki dotyczące pracy ze zmiennymi środowiskowymi i nie tylko.

Pamiętaj, że jeśli pojawią się jakiekolwiek problemy podczas wdrażania, dokumentacja Troubleshooting to świetne źródło, które pomoże Ci je sprawnie rozwiązać i utrzymać płynność pracy.