Ruby: Wdrażanie na produkcję

Wdróż kod Ruby na produkcję w kilka minut z Stackhero

👋 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 hostingu w chmurze Ruby od Stackhero umożliwia szybkie uruchomienie projektów Ruby w zaledwie kilka minut. Otrzymujesz solidną platformę zaprojektowaną tak, aby uprościć proces wdrażania i pozwolić Ci skupić się na aplikacji, a nie na infrastrukturze.

Oto, co otrzymujesz:

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

Aby rozpocząć, wystarczy mieć zainstalowany Git na swoim komputerze.

Jeśli chcesz zaoszczędzić czas lub wolisz uniknąć konfigurowania środowiska lokalnego, możesz wypróbować Code-Hero od Stackhero.

Code-Hero to środowisko deweloperskie dostępne przez przeglądarkę, działające na dowolnym urządzeniu. Oparte na forku VSCode, posiada preinstalowane i skonfigurowane najważniejsze narzędzia, dzięki czemu możesz zacząć kodować od razu, bez żadnej konfiguracji.

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

Wdrażanie aplikacji Ruby na Stackhero jest proste. Oto przebieg procesu, a każdy krok opisany jest poniżej:

  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 Rozwiązywanie problemów pozwoli Ci szybko znaleźć rozwiązania i kontynuować pracę.

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

Gdy Twoja usługa Ruby jest już uruchomiona, kolejnym krokiem jest dodanie klucza publicznego SSH. Aby wyświetlić swój klucz publiczny, użyj polecenia:

cat ~/.ssh/id_*.pub

Nie masz jeszcze kluczy SSH?

Możesz wygenerować klucz poleceniem:

ssh-keygen -t ed25519

Aby dodać klucz SSH, przejdź do panelu Stackhero, wybierz swoją usługę Ruby, kliknij "Konfiguruj" i wklej swój klucz publiczny w sekcji "Klucze publiczne SSH".

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

Wskazówka: Aby zaoszczędzić czas w przyszłości, możesz dodać swój klucz publiczny SSH do profilu Stackhero. Nowe usługi, które utworzysz, będą go zawierać automatycznie.

Kliknij swoje zdjęcie profilowe w prawym górnym rogu panelu, wybierz "Twój profil" i dodaj swój klucz publiczny SSH.

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

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

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

Aby poinformować Stackhero, jak uruchomić Twoją aplikację, dodaj plik Makefile w katalogu głównym projektu. Ten plik definiuje polecenia, które Stackhero wykona podczas wdrażania.

Jeśli nie miałeś wcześniej do czynienia z Makefile lub poleceniem make, poniższe kroki przeprowadzą Cię przez utworzenie działającego Makefile.

Utwórz plik Makefile o następującej treści:

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

Co robi ten Makefile:

  1. Reguła run jest wymagana. Stackhero szuka tej reguły jako punktu wejścia podczas wdrażania. Zachowaj tę nazwę reguły.
  2. Przykład używa rake i bundle, ale możesz dostosować te polecenia do swojej aplikacji.
  3. Każda linia polecenia musi zaczynać się od znaku tabulacji, a nie od spacji. Jeśli pojawi się błąd *** missing separator, sprawdź, czy używasz tabulatorów.

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

  1. Prekompilację zasobów takich jak JavaScript i CSS do katalogu public/assets.
  2. Migracje bazy danych.
  3. Uruchomienie serwera Puma do obsługi Twojej aplikacji.

Jesteś gotowy do wdrożenia. Użyj polecenia:

git push stackhero main

Podczas pierwszego wdrożenia Git poprosi o potwierdzenie odcisku klucza SSH. Wpisz "yes", aby kontynuować.

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

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

Odwiedź swoją wdrożoną aplikację pod adresem wyświetlonym w panelu Stackhero. Adres będzie wyglądał mniej więcej tak: https://<XXXXXX>.stackhero-network.com.

Twoja aplikacja jest już dostępna w środowisku produkcyjnym.

Jeśli napotkasz jakiekolwiek trudności podczas wdrażania, sekcja Rozwiązywanie problemów zawiera najczęstsze problemy i ich rozwiązania.

Dowiedziałeś się, jak wdrożyć kod Ruby na produkcję z wykorzystaniem Stackhero, korzystając z procesu, który jest zarówno wydajny, jak i prosty.

Aby dowiedzieć się więcej, na przykład o wdrażaniu różnych gałęzi Git, tagów lub commitów, a także o zarządzaniu wieloma środowiskami, takimi jak staging i produkcja, zapoznaj się z dokumentacją Zaawansowane zastosowania wdrażania. Znajdziesz tam również wskazówki dotyczące pracy ze zmiennymi środowiskowymi i innymi przydatnymi funkcjami.

W razie pytań lub problemów dokumentacja Rozwiązywanie problemów jest zawsze dostępna, aby pomóc Ci utrzymać płynny i efektywny proces wdrażania.