A Ruby app in App Engine is configured using an
file, that contains CPU, memory, network and disk resources, scaling, and other
general settings including environment variables.
Specify all the runtime configuration for your Ruby app, including
versions and URLs, in the
app.yamlfile. This file acts as a deployment descriptor of a specific service version. You must first create the
app.yamlfile for the
defaultservice of your app before you can create and deploy
app.yamlfiles for additional services.
You can specify a unique name for your
app.yaml files, but then you must
specify the file name with the deployment
as well. For example, if you name your
app.flexible.yaml, then you must deploy your app using either:
To learn more about structuring multiple services and
gcloud app deploy service-name-app.yaml gcloud app deploy app.flexible.yaml
app.yamlfiles in your app, see Structuring Web Services. Depending on the complexity of your app's service, you might only need to define a few elements in the corresponding
app.yamlfile. The following example demonstrates what a simple Ruby app might require in the flexible environment:
runtime: ruby env: flex entrypoint: bundle exec ruby app.rb # This sample incurs costs to run on the App Engine flexible environment. # The settings below are to reduce costs during testing and are not appropriate # for production use. For more information, see: # https://cloud.google.com/appengine/docs/flexible/ruby/configuring-your-app-with-app-yaml manual_scaling: instances: 1 resources: cpu: 1 memory_gb: 0.5 disk_size_gb: 10
app.yamlfile is in the YAML format.
All configuration elements
For a complete list of all the supported elements in this configuration file,