Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 22 additions & 20 deletions sites/platform/src/create-apps/app-reference/composable-image.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,24 +37,26 @@ The following table presents all the properties you can use at the top level of
The column _Set in instance?_ defines whether the given property can be overridden within a `web` or `workers` instance.
To override any part of a property, you have to provide the entire property.

| Name | Type | Required | Set in instance? | Description |
|--------------------|-----------------------------------------------------|----------|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `name` | `string` | Yes | No | A unique name for the app. Must be lowercase alphanumeric characters. Changing the name destroys data associated with the app. |
| `stack` | An array of [Nix packages](#stack) | Yes | No | A list of packages from the {{% vendor/name %}} collection of [supported runtimes](#supported-nix-packages) and/or from [Nixpkgs](https://search.nixos.org/packages). |
| `size` | A [size](#sizes) | | Yes | How much resources to devote to the app. Defaults to `AUTO` in production environments. |
| `relationships` | A dictionary of [relationships](#relationships) | | Yes | Connections to other services and apps. |
| `disk` | `integer` or `null` | | Yes | The size of the disk space for the app in [MB](/glossary/_index.md#mb). Minimum value is `128`. Defaults to `null`, meaning no disk is available. See [note on available space](#available-disk-space) |
| `mounts` | A dictionary of [mounts](#mounts) | | Yes | Directories that are writable even after the app is built. If set as a local source, `disk` is required. |
| `web` | A [web instance](#web) | | N/A | How the web application is served. |
| `workers` | A [worker instance](#workers) | | N/A | Alternate copies of the application to run as background processes. |
| `timezone` | `string` | | No | The timezone for crons to run. Format: a [TZ database name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). Defaults to `UTC`, which is the timezone used for all logs no matter the value here. See also [app runtime timezones](/create-apps/timezone.md) |
| `access` | An [access dictionary](#access) | | Yes | Access control for roles accessing app environments. |
| `variables` | A [variables dictionary](#variables) | | Yes | Variables to control the environment. |
| `firewall` | A [firewall dictionary](#firewall) | | Yes | Outbound firewall rules for the application. |
| `hooks` | A [hooks dictionary](#hooks) | | No | What commands run at different stages in the build and deploy process. |
| `crons` | A [cron dictionary](#crons) | | No | Scheduled tasks for the app. |
| `source` | A [source dictionary](#source) | | No | Information on the app's source code and operations that can be run on it. |
| `additional_hosts` | An [additional hosts dictionary](#additional-hosts) | | Yes | Maps of hostnames to IP addresses. |
| Name | Type | Required | Set in instance? | Description |
|--------------------|--------------------------------------------------------------------------|----------|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `name` | `string` | Yes | No | A unique name for the app. Must be lowercase alphanumeric characters. Changing the name destroys data associated with the app. |
| `stack` | An array of [Nix packages](#stack) | Yes | No | A list of packages from the {{% vendor/name %}} collection of [supported runtimes](#supported-nix-packages) and/or from [Nixpkgs](https://search.nixos.org/packages). |
| `size` | A [size](#sizes) | | Yes | How much resources to devote to the app. Defaults to `AUTO` in production environments. |
| `relationships` | A dictionary of [relationships](#relationships) | | Yes | Connections to other services and apps. |
| `disk` | `integer` or `null` | | Yes | The size of the disk space for the app in [MB](/glossary/_index.md#mb). Minimum value is `128`. Defaults to `null`, meaning no disk is available. See [note on available space](#available-disk-space) |
| `mounts` | A dictionary of [mounts](#mounts) | | Yes | Directories that are writable even after the app is built. If set as a local source, `disk` is required. |
| `web` | A [web instance](#web) | | N/A | How the web application is served. |
| `workers` | A [worker instance](#workers) | | N/A | Alternate copies of the application to run as background processes. |
| `timezone` | `string` | | No | The timezone for crons to run. Format: a [TZ database name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). Defaults to `UTC`, which is the timezone used for all logs no matter the value here. See also [app runtime timezones](/create-apps/timezone.md) |
| `access` | An [access dictionary](#access) | | Yes | Access control for roles accessing app environments. |
| `variables` | A [variables dictionary](#variables) | | Yes | Variables to control the environment. |
| `firewall` | A [firewall dictionary](#firewall) | | Yes | Outbound firewall rules for the application. |
| `hooks` | A [hooks dictionary](#hooks) | | No | What commands run at different stages in the build and deploy process. |
| `crons` | A [cron dictionary](#crons) | | No | Scheduled tasks for the app. |
| `source` | A [source dictionary](#source) | | No | Information on the app's source code and operations that can be run on it. |
| `additional_hosts` | An [additional hosts dictionary](#additional-hosts) | | Yes | Maps of hostnames to IP addresses. |
| `operations` | A [dictionary of Runtime operations](/create-apps/runtime-operations.md) | | No | Runtime operations for the application. |

{{% note %}}
The ``type``, ``build``, ``dependencies``, and ``runtime`` keys are only supported when using a [single-runtime image](/create-apps/app-reference/single-runtime-image.md).
They are **not** supported when using the composable image.
Expand Down Expand Up @@ -827,8 +829,8 @@ The key of each item is a regular expression to match paths exactly.
If an incoming request matches the rule, it's handled by the properties under the rule,
overriding any conflicting rules from the rest of the `locations` dictionary.

Under `rules`, you can set all of the other possible [`locations` properties](#locations)
except `root`, `index` and `request_buffering`.
Under `rules`, you can set all the other possible [`locations` properties](#locations)
except `root`, `index`, `rules` and `request_buffering`.

In the following example, the `allow` key disallows requests for static files anywhere in the site.
This is overridden by a rule that explicitly allows common image file formats.
Expand Down
Loading
Loading