Menggunakan platform Ruby - AWS App Runner

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan platform Ruby

Platform AWS App Runner Ruby menyediakan runtime terkelola. Setiap runtime memudahkan untuk membangun dan menjalankan container dengan aplikasi web berdasarkan versi Ruby. Saat Anda menggunakan runtime Ruby, App Runner dimulai dengan gambar runtime Ruby yang dikelola. Gambar ini didasarkan pada image Amazon Linux Docker dan berisi paket runtime untuk versi Ruby dan beberapa alat. App Runner menggunakan image runtime terkelola ini sebagai image dasar, dan menambahkan kode aplikasi Anda untuk membuat image Docker. Kemudian menyebarkan gambar ini untuk menjalankan layanan web Anda dalam sebuah wadah.

Anda menentukan runtime untuk layanan App Runner saat membuat layanan menggunakan konsol App Runner atau operasi API. CreateService Anda juga dapat menentukan runtime sebagai bagian dari kode sumber Anda. Gunakan runtime kata kunci dalam file konfigurasi App Runner yang Anda sertakan dalam repositori kode Anda. Konvensi penamaan runtime terkelola adalah. <language-name><major-version>

Untuk nama dan versi runtime Ruby yang valid, lihat. Informasi rilis runtime Ruby

App Runner memperbarui runtime untuk layanan Anda ke versi terbaru pada setiap penerapan atau pembaruan layanan. Jika aplikasi Anda memerlukan versi tertentu dari runtime terkelola, Anda dapat menentukannya menggunakan runtime-version kata kunci dalam file konfigurasi App Runner. Anda dapat mengunci ke tingkat versi apa pun, termasuk versi mayor atau minor. App Runner hanya membuat pembaruan tingkat yang lebih rendah ke runtime layanan Anda.

Sintaks versi untuk runtime Ruby: major[.minor[.patch]]

Misalnya: 3.1.2

Contoh berikut menunjukkan penguncian versi:

  • 3.1— Kunci versi mayor dan minor. App Runner hanya memperbarui versi tambalan.

  • 3.1.2— Kunci ke versi patch tertentu. App Runner tidak memperbarui versi runtime Anda.

Konfigurasi runtime Ruby

Saat memilih runtime terkelola, Anda juga harus mengonfigurasi, seminimal mungkin, membangun dan menjalankan perintah. Anda mengonfigurasinya saat membuat atau memperbarui layanan App Runner. Anda dapat melakukan ini menggunakan salah satu metode berikut:

  • Menggunakan konsol App Runner — Tentukan perintah di bagian Configure build pada tab proses pembuatan atau konfigurasi.

  • Menggunakan App Runner API — Panggil operasi CreateServiceatau UpdateServiceAPI. Tentukan perintah menggunakan BuildCommand dan StartCommand anggota tipe CodeConfigurationValuesdata.

  • Menggunakan file konfigurasi — Tentukan satu atau beberapa perintah build hingga tiga fase build, dan satu perintah run yang berfungsi untuk memulai aplikasi Anda. Ada pengaturan konfigurasi opsional tambahan.

Menyediakan file konfigurasi adalah opsional. Saat membuat layanan App Runner menggunakan konsol atau API, Anda menentukan apakah App Runner mendapatkan setelan konfigurasi secara langsung saat dibuat atau dari file konfigurasi.

Contoh runtime Ruby

Contoh berikut menunjukkan file konfigurasi App Runner untuk membangun dan menjalankan layanan Ruby.

Contoh ini menunjukkan file konfigurasi minimal yang dapat Anda gunakan dengan runtime terkelola Ruby. Untuk asumsi yang dibuat oleh App Runner dengan file konfigurasi minimal, lihat. Contoh file konfigurasi

contoh apprunner.yaml
version: 1.0 runtime: ruby31 build: commands: build: - bundle install run: command: bundle exec rackup --host 0.0.0.0 -p 8080

Contoh ini menunjukkan penggunaan semua kunci konfigurasi dengan runtime terkelola Ruby.

catatan

Versi runtime yang digunakan dalam contoh ini adalah 3.1.2. Anda dapat menggantinya dengan versi yang ingin Anda gunakan. Untuk versi runtime Ruby terbaru yang didukung, lihat. Informasi rilis runtime Ruby

contoh apprunner.yaml
version: 1.0 runtime: ruby31 build: commands: pre-build: - scripts/prebuild.sh build: - bundle install post-build: - scripts/postbuild.sh env: - name: MY_VAR_EXAMPLE value: "example" run: runtime-version: 3.1.2 command: bundle exec rackup --host 0.0.0.0 -p 4567 network: port: 4567 env: APP_PORT env: - name: MY_VAR_EXAMPLE value: "example"

Contoh-contoh ini menunjukkan kode sumber untuk aplikasi Ruby lengkap yang dapat Anda gunakan ke layanan runtime Ruby.

contoh server.rb
# server.rb require 'sinatra' get '/' do 'Hello World!' end
contoh config.ru
# config.ru require './server' run Sinatra::Application
contoh Gemfile
# Gemfile source 'https://rubygems.org (https://rubygems.org/)' gem 'sinatra' gem 'puma'
contoh apprunner.yaml
version: 1.0 runtime: ruby31 build: commands: build: - bundle install run: command: bundle exec rackup --host 0.0.0.0 -p 4567 network: port: 4567 env: APP_PORT