Deprecated: Creation of dynamic property ACF::$fields is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/fields.php on line 138

Deprecated: Creation of dynamic property acf_loop::$loops is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/loop.php on line 28

Deprecated: Creation of dynamic property ACF::$loop is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/loop.php on line 269

Deprecated: Creation of dynamic property ACF::$revisions is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/revisions.php on line 397

Deprecated: Creation of dynamic property acf_validation::$errors is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/validation.php on line 28

Deprecated: Creation of dynamic property ACF::$validation is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/validation.php on line 214

Deprecated: Creation of dynamic property acf_form_customizer::$preview_values is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 28

Deprecated: Creation of dynamic property acf_form_customizer::$preview_fields is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 29

Deprecated: Creation of dynamic property acf_form_customizer::$preview_errors is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 30

Deprecated: Creation of dynamic property ACF::$form_front is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-front.php on line 598

Deprecated: Creation of dynamic property acf_form_widget::$preview_values is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 34

Deprecated: Creation of dynamic property acf_form_widget::$preview_reference is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 35

Deprecated: Creation of dynamic property acf_form_widget::$preview_errors is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 36

Deprecated: Creation of dynamic property KS_Site::$pingback is deprecated in /home/sarotaq/crn/wp-content/plugins/timber-library/lib/Site.php on line 180

Deprecated: Creation of dynamic property acf_field_oembed::$width is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-oembed.php on line 31

Deprecated: Creation of dynamic property acf_field_oembed::$height is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-oembed.php on line 32

Deprecated: Creation of dynamic property acf_field_google_map::$default_values is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-google-map.php on line 33

Deprecated: Creation of dynamic property acf_field__group::$have_rows is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-group.php on line 31

Deprecated: Creation of dynamic property acf_field_clone::$cloning is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-clone.php on line 34

Deprecated: Creation of dynamic property acf_field_clone::$have_rows is deprecated in /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-clone.php on line 35

Deprecated: Creation of dynamic property Timber\Integrations::$wpml is deprecated in /home/sarotaq/crn/wp-content/plugins/timber-library/lib/Integrations.php on line 33

Warning: Cannot modify header information - headers already sent by (output started at /home/sarotaq/crn/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-clone.php:34) in /home/sarotaq/crn/wp-includes/feed-rss2.php on line 8
- CRN https://crn.sarota.dev/tag/ruby/ CRN.pl to portal B2B poświęcony branży IT. Dociera do ponad 40 000 unikalnych użytkowników. Jest narzędziem pracy kadry zarządzającej w branży IT w Polsce. Codziennie nowe informacje z branży IT, wywiady, artykuły, raporty tematyczne Tue, 02 Jun 2015 08:00:00 +0000 pl-PL hourly 1 https://wordpress.org/?v=6.6.2 Aplikacje Ruby na platformie CloudPortal https://crn.sarota.dev/artykuly/aplikacje-ruby-na-platformie-cloudportal/ https://crn.sarota.dev/artykuly/aplikacje-ruby-na-platformie-cloudportal/#respond Tue, 02 Jun 2015 08:00:00 +0000 https://crn.pl/default/aplikacje-ruby-na-platformie-cloudportal/ CloudPortal jest elastyczną platformą PaaS, która umożliwia tworzenie i utrzymywanie w jednym środowisku aplikacji przygotowanych w najpopularniejszych językach programowania i korzystających z szerokiej gamy usług. Jednym ze wspieranych środowisk uruchomieniowych jest konfiguracja wspierająca aplikacje Ruby, Rack, Rails i Sinatra.

Artykuł Aplikacje Ruby na platformie CloudPortal pochodzi z serwisu CRN.

]]>
Przygotowanie istniejących aplikacji lub tworzenie nowych dla chmury CloudPortal wymaga poznania wymagań szablonu środowiska uruchomieniowego i możliwości dostosowania go do własnych potrzeb.

Dla aplikacji Ruby i RoR CloudPortal domyślnie wykorzystuje standardowe biblioteki serwera web WEBRick. W sytuacji kiedy aplikacja wymaga bardziej zaawansowanej konfiguracji można skorzystać z funkcjonalności oferowanych przez serwer PhusionPassanger, Puma, Thin lub Unicorn. Uruchomienie aplikacji w niestandardowej konfiguracji wymaga:

  • – dodania odpowiedniego gema serwera do Gemfile,
  • – utworzenia lub zmodyfikowania pliku konfiguracyjnego w folderze config aplikacji (np. config/puma.rb),
  • – utworzenia w folderze głównym aplikacji pliku Procfile, którego obecność informuje komórkę obliczeniową aplikacji o konieczności uruchomienia odpowiednich procesów (np. serwera puma z odpowiednią konfiguracją) dla pożądanego funkcjonowania aplikacji.

Aplikacje uruchomione na Cloudportal przy pomocy szablonu Ruby mogą wykorzystywać wszystkie dostępne w środowisku usługi. Proces przypisywania tworzenia instancji usługi i przypisywania jej do aplikacji jest taki sam jak w przypadku każdego środowiska uruchomieniowego, ale sam proces konfiguracji aplikacji podczas jej uruchamiania jest charakterystyczny dla każdego buildpacka. Dane konfiguracyjne dotyczące przypisanych usług są przekazywane do aplikacji za pomocą zmiennej środowiskowej VCAP_SERVICES. Aplikacja może przy pomocy gema cf-apps-utils odczytać informacje w niej zawarte na podstawie nazwy, tagu lub etykiety. Podczas instancjonowania aplikacji, buildpack Ruby tworzy na podstawie zmiennej VCAP_SERVICES zmienną środowiskową DATBASE_URL, której zawartość jest wykorzystywana do zamiany zawartości pliku database.yml. Aplikacje nie bazujące na RoR również mogą wykorzystać dane zawarte w zmiennych środowiskowych np. vcap_services = JSON.parse(ENV[’VCAP_SERVICES’]).

Środowisko uruchomieniowe Ruby w CloudPortal umożliwia również na wykonanie podczas instancjonowania aplikacji poleceń Rake. Można ich użyć do odczytywania zmiennych środowiskowych i konfiguracji platformy aplikacji lub usług, np. utworzenia wstępnego schematu bazy danych i importu danych. Polecenia powinny znajdować się w plikach .rake w folderze aplikacji lib/tasks. Informacja o konieczności uruchomienia polecenia powinna zostać również umieszczona w pliku manifestu aplikacji.

Twórcy aplikacji dla środowiska Ruby na platformie CloudPortal powinni również zwrócić uwagę na wymagania, jakie buildpack stawia przed każdym uruchamianym programem:

  • – aplikacja musi zawierać pliki Gemfile i Gemfile.lock,
  • – dla aplikacji Rack i Sinatra jest wymagany odpowiedni plik config.ru,
  • – CloudPortal wspiera proces prekompilacji zasobów i może on być automatycznie wykonywany podczas instancjonowania aplikacji. Jest jednak zalecane, aby prekompilacja była wykonywana przed podładowywanie aplikacji. Zapewnia to skrócenie czasu jej uruchamiania i uniknięcie problemów z reinicjalizacją aplikacji podczas prekompilacji.
  • – Platforma CloudPortal może przechwytywać i udostępniać developerowi informacje diagnostyczne z aplikacji, ale muszą być one pisane do STDOUT lub SDRERR. W zależności od wersji Rails buildpack może, ale nie musi automatycznie zainstalować odpowiedni plugin (rails_log_stdout dla Rails 2.x) lub gema (rails_12factor dla Rails 3.x i 4.x). W przypadku Rails 4.x twórca programu powinien dodać rails_12factor do pliku Gemfile.
xx

Dotacje na innowacje. Inwestujemy w waszą przyszłość

Artykuł Aplikacje Ruby na platformie CloudPortal pochodzi z serwisu CRN.

]]>
https://crn.sarota.dev/artykuly/aplikacje-ruby-na-platformie-cloudportal/feed/ 0