diff --git a/apps/docs/content/nats/overview.mdx b/apps/docs/content/nats/overview.mdx index a671e8a7..09f76fd5 100644 --- a/apps/docs/content/nats/overview.mdx +++ b/apps/docs/content/nats/overview.mdx @@ -27,28 +27,54 @@ Our NATS implementation features optimized default settings designed for common - Secure authentication with automatically generated credentials - Optimized settings for performance and reliability +You can fine-tune your NATS service by adjusting **environment variables**: + +### Available Configuration Options + +:::note +If certain variables are not visible in your configuration, they may have been introduced after your service was created. Simply add them as [secret variables](/features/env-variables#2-secret-variables) to access the functionality. +::: + +
Variable | +Description | +
---|---|
MAX_PAYLOAD |
+ Defines the maximum allowed message size for all NATS traffic. Default: 8MB , Maximum: 64MB . See NATS limits documentation for details. |
+
JET_STREAM_ENABLED |
+ Controls whether JetStream functionality is enabled. Default: 1 (enabled), Set to 0 to disable. See JetStream Configuration section below for more details. |
+
The base build environment contains {data.alpine.default}, the selected major version of Bun, - Zerops command line tool, `npm`, + Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -298,8 +246,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -315,7 +263,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Bun defined in the [base](bun/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -422,7 +370,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -490,7 +438,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -520,7 +468,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -574,8 +522,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Bun vers Following options are available for Bun runtimes: -The base runtime environment contains {data.alpine.default}, the selected major version of Bun, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -641,8 +585,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -663,16 +607,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Bun runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Bun environment contains {data.alpine.default} the selected - major version of Bun, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Bun, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -721,10 +664,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -- The prepare runtime container contains {data.alpine.default}, the selected major version of Bun, Zerops command line tool and `npm`, + The prepare runtime container contains {data.alpine.default}, the selected major version of Bun, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -847,6 +788,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Bun service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
Resource | -Price | -Description | -
---|---|---|
Shared CPU | -$0.60 per CPU / 30 days | -Economical option for most workloads with good performance | -
Dedicated CPU | -$6.00 per CPU / 30 days | -Reserved CPU cores for predictable performance | -
RAM | -$0.75 per 0.25 GB / 30 days | -Memory allocated to your services | -
Disk Space | -$0.05 per 0.5 GB / 30 days | -Storage space for your applications and data | -
Service | -Price | -Description | -
---|---|---|
Dedicated IPv4 | -$3.00 per 30 days | -Exclusive IPv4 address for your project (instead of shared) | -
Object Storage | -$0.01 per GB / 30 days | -Scalable storage for files, backups, and static assets | -
Item | -Price | -Description | -
---|---|---|
Extra Egress | -$0.02 per GB | -Data transfer out of your project beyond plan limits | -
Extra Backup Space | -$0.50 per 5 GB | -Additional storage for automatic, encrypted backups | -
Extra Build Time | -$0.50 per 15 hours | -Additional time for building and deploying applications | -
The base build environment contains {data.alpine.default}, the selected - major version of Deno, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
+ major version of Deno, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -3353,8 +2858,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -3370,7 +2875,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Deno defined in the [base](/deno/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -3475,7 +2980,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -3543,7 +3048,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -3573,7 +3078,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -3627,8 +3132,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Deno ver Following options are available for Deno builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Deno, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -3694,8 +3195,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -3716,16 +3217,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Deno runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Deno environment contains {data.alpine.default} the selected - major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -3774,10 +3274,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -3900,6 +3398,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Deno service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of .NET, Zerops command line tool, `ASP .NET` and `git`. -
+ major version of .NET, Zerops command line tool, `ASP .NET` and `git`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -6363,8 +5461,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -6380,7 +5478,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of .NET defined in the [base](/dotnet/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `ASP .NET` and `git` @@ -6474,7 +5572,7 @@ buildCommands: #### Command exit code -If any command fails, it returns an exit code other than 0 and the build is canceled. Read the [build log](/dotnet/how-to/logs#build-log) to troubleshoot the error. If the error log doesn't contain any specific error message, try to run your build with the `--verbosityThe base runtime environment contains {data.alpine.default}, the - selected major version of .NET, Zerops command line tool and `ASP .NET` and `git`. -
+ selected major version of .NET, Zerops command line tool and `ASP .NET` and `git`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -6702,8 +5796,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -6719,39 +5813,25 @@ For example, to connect to a .NET service with hostname = "app" and port = 5000 Each port has following attributes: -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base .NET environment contains {data.alpine.default}, the selected - major version of .NET, Zerops command line tool and `ASP .NET` and `git`. To install additional packages + major version of .NET, Zerops command line tool and `ASP .NET` and `git`. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -6800,12 +5880,10 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the selected major version of .NET, - Zerops command line tool and + Zerops command line tool and `ASP .NET` and `git`. -
The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -6926,6 +6004,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your .NET application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your .NET application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your .NET application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your .NET application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|
-
type | -+ Limitations: + + duplicate services with the same name in the same project are forbidden + maximum 25 characters + must contain only lowercase ASCII letters (a-z) or numbers (0-9) + + type + Specifies the service type and version. See what [.NET service types](/references/import-yaml/type-list#runtime-services) are currently supported. - | -
verticalAutoscaling | -- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - | -
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of Elixir, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
+ major version of Elixir, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -9249,8 +7925,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -9266,7 +7942,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Elixir defined in the [base](/elixir/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -9373,7 +8049,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -9441,7 +8117,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -9471,7 +8147,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -9525,8 +8201,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Elixir v Following options are available for Elixir builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Elixir, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -9592,8 +8264,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -9614,16 +8286,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Elixir runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Elixir environment contains {data.alpine.default} the selected - major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -9672,10 +8343,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -9798,6 +8467,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Elixir service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
-
-
-
-
-
-
Field name | -Allowed values | -
---|---|
Minute | -0-59 | -
Hour | -0-23 | -
Day | -1-31 | -
Month | -1-12 | -
Week Day | -0–7; both 0 and 7 represent Sunday | -
-
-
Region | -Location | -Coverage Area | -|
---|---|---|---|
EU | -CZ | -Prague, Czech Republic | -Primary European coverage + failover for all regions | -
DE | -Falkenstein, Germany | -||
UK | -London, United Kingdom | -UK and surrounding areas | -|
AU | -Sydney, Australia | -Australia and Oceania | -|
SG | -Singapore, Singapore | -Southeast Asia | -|
CA | -Beauharnois, Canada | -North America | -
Pattern | -Description | -Example | -
---|---|---|
`/*` | -Purges all content | -Useful after major updates | -
`/images/*` | -Purges all content in a directory | -Clear all cached images | -
`/css/main.css$` | -Purges a specific file | -Update a single CSS file | -
`/2023*` | -Purges content starting with pattern | -Clear content with date prefix | -
-
- | Lightweight Core | -Serious Core | -
---|---|---|
Infrastructure | -Single container (limited redundancy) | -Multi-container (highly available) | -
SSL Termination | -||
Automatic Certificate Generation | -||
Proxy / Load Balancer | -||
IPv6 Address | -||
Build Time | -15 hours | -150 hours | -
Backup Space | -5 GB | -25 GB | -
Egress | -100 GB | -3 TB | -
Failover Protection | -Limited | -Comprehensive | -
-
-
zcli service deploy
command instead.
+If you just want to [deploy](#deploy-phase) your already built application to Zerops, use the zcli service deploy command instead.
## Build phase
-
-
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of Gleam, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
+ major version of Gleam, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -17037,8 +14849,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -17054,7 +14866,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Gleam defined in the [base](/gleam/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -17161,7 +14973,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -17229,7 +15041,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -17259,7 +15071,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -17313,8 +15125,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Gleam ve Following options are available for Gleam runtimes: -The base runtime environment contains {data.alpine.default}, the selected major version of Gleam, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -17380,8 +15188,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -17402,16 +15210,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Gleam runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Gleam environment contains {data.alpine.default} the selected - major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -17460,10 +15267,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -17586,6 +15391,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Gleam service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - version of Go, Zerops command line tool, `git` and `wget`. -
+ version of Go, Zerops command line tool, `git` and `wget`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -19810,8 +17213,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -19827,7 +17230,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Go defined in the [base](/go/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `git` and `wget` @@ -19932,7 +17335,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -19998,7 +17401,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -20028,7 +17431,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -20082,8 +17485,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Go versi Following options are available for Go builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Go, Zerops command line tool, `git` and `wget`. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -20149,8 +17548,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -20166,39 +17565,24 @@ For example, to connect to a Go service with hostname = "app" and port = 8080 fr Each port has following attributes: - -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Go environment contains {data.alpine.default}, the selected - major version of Go, Zerops command line tool and `git` and `wget`. To install additional packages or tools add one or more prepare commands: -
+ major version of Go, Zerops command line tool and `git` and `wget`. To install additional packages or tools add one or more prepare commands: ```yaml zerops: @@ -20247,10 +17631,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Go, Zerops command line tool and `git` and `wget`. -
+ selected major version of Go, Zerops command line tool and `git` and `wget`. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -20373,6 +17755,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Go application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Go application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Go application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Go application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Go service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
verticalAutoscaling | -
- Optional. Defines custom vertical auto scaling parameters.
- + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
- Learn more about projects in Zerops. See how to import a whole project into Zerops. -
-- Learn more about services in Zerops and how to import a service to an existing project. -
-- The yaml file includes a `buildFromGit` directive, which ensures a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Go application in Zerops. - -Learn more about how to access build log of your Go service in Zerops. -
-- Learn more about how to access your Go service in Zerops. -
-+ 2. Create a project. + + Learn more about projects in Zerops. See how to import a whole project into Zerops. + + 3. In the left menu, click on Import services, copy & paste the contents of the `import-services.yaml` config file from the recipe repository of your choice. Then click on Import service. + + Learn more about services in Zerops and how to import a service to an existing project. + + The yaml file includes a `buildFromGit` directive, which ensures a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. + + 4. Several pipelines are created, one for project creation and the rest for the activation of the services. Wait for all to finish. + + Learn more about how the pipelines can be triggered and about build and deploy processes of a Go application in Zerops. + +Learn more about how to access build log of your Go service in Zerops. + + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Go service in Zerops. + + 6. Once the pipeline has finished, click on the activated subdomain URL. You should see a simple page with `Entry added successfully with random data: f47ac10b-58cc-0372-8567-0e02b2c3d479. Total count: 1` + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. - -
-- Learn more about how to use `psql` command-line tool instead or how to import and export data from your database. -
-+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- + +# Go > Tutorial > Step By Step As said, there is no need for coding yet, we have created a [Github repository ↗](https://github.com/zeropsio/recipe-go-hello-world), a **_recipe_**, containing the most simple Go web application. The repo will be used as a source from which the app will be built. @@ -22435,214 +19458,144 @@ In the detail of each step, you can find a link with more information about the 1. Log in/sign up to [Zerops GUI ↗](https://app.zerops.io) -
- Learn more about projects in - Zerops. See how to import a whole project into Zerops. -
-- Learn more about services in Zerops and how to import a service to an existing project. -
-+ 2. Create a project. + + Learn more about projects in + Zerops. See how to import a whole project into Zerops. + + 3. In the left menu, click on Import services, copy & paste the + contents of this yaml file and click on Import service. + + Learn more about services in Zerops and how to import a service to an existing project. + The yaml file includes a `buildFromGit` directive, which ensures - a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to + a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Go application in Zerops. +Learn more about how to access build log of your Go service in Zerops. -Learn more about how to access build log of your Go service in Zerops. - -
-- Learn more about how to access your Go + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Go service in Zerops. -
-+ + 6. Once the pipeline has finished, click on the activated subdomain URL: You should see a simple page with `Hello World!` printed. + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. - -
-+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- + +# Help > Contacts :construction: **We apologize for any inconvenience, we are doing our best to finish this documentation ASAP to make your Zerops experience a blast!** :construction: In the meantime, if you have any troubles setting up your application, or if you find a specific part of the documentation missing, don't hesitate to contact our team via: -
-
The base build environment contains {data.alpine.default}, the selected version - of Java, Zerops command line tool, `git` and + of Java, Zerops command line tool, `git` and `wget`. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -23075,8 +19917,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -23092,7 +19934,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Java defined in the [base](/java/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `git` and `wget` @@ -23197,7 +20039,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -23263,7 +20105,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -23293,7 +20135,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -23346,8 +20188,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Java ver Following options are available for Java builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Java, Zerops command line tool, git` and `wget`. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -23413,8 +20251,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -23430,41 +20268,26 @@ For example, to connect to a Java service with hostname = "app" and port = 8080 Each port has following attributes: - -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Java environment contains {data.alpine.default}, the selected major - version of Java, Zerops command line tool and + version of Java, Zerops command line tool and `git` and `wget`. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -23513,10 +20336,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the selected - major version of Java, Zerops command line tool and `git` and `wget`. -
+ major version of Java, Zerops command line tool and `git` and `wget`. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -23638,6 +20459,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Java application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Java application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Java application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Java application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Java service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
verticalAutoscaling | -
- Optional. Defines custom vertical auto scaling parameters.
- + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
Parameter | -Description | -Limitations | -
---|---|---|
hostname | -A unique service identifier like `keydb`, `db` etc. | -
- - duplicate services with the same name in the same project are forbidden - - maximum 25 characters - - must contain only lowercase ASCII letters (a-z) or numbers (0-9) - |
-
-
-
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [KeyDB service types](/references/import-yaml/type-list#database-services) are currently supported. - |
-
mode | -
+
+ mode
+
Defines the operation mode of KeyDB service.
- HA
- + HA + Creates a KeyDB cluster with 2 database containers. This mode is suited for production. Zerops always keeps the 2 database containers on different physical machines. All your data is stored redundantly in 2 identical copies. In case of a failure of a container or the underlying physical machine, Zerops automatically disconnects the failed container from the cluster, creates a new container and syncs all data from the remaining copy. Finally the broken container is automatically deleted. - NON_HA - + NON_HA + Zerops will create a KeyDB database installed in a single container. Useful for non-essential data or dev environments. Your data is stored only in a single container. If the container or the underlying physical machine fails, your data since the last backup are lost. Zerops doesn't provide any automatic repairs of single node KeyDB services. - |
-
verticalAutoscaling | -
- Optional. Defines custom vertical auto scaling parameters.
- + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
-
-
-
-
-
-
Parameter | -Description | -Limitations | -
---|---|---|
hostname | -A unique service identifier like `mariadb`,`sql`, `db` etc. | -
- - duplicate services with the same name in the same project are forbidden - - maximum 25 characters - - must contain only lowercase ASCII letters (a-z) or numbers (0-9) - |
-
-
Resources Type | -Minimum resource | -Maximum resource | -
---|---|---|
CPU cores | -1 | -5 | -
RAM | -0.5 GB | -32 GB | -
Disk | -1 GB | -100 GB | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -Limitations | -
---|---|---|
hostname | -A unique service identifier like `mariadb`,`sql`, `db` etc. | -
-
|
-
type | -Specifies the service type and version. | -+ Parameter + Description + Limitations + + hostname + A unique service identifier like `mariadb`,`sql`, `db` etc. + + duplicate services with the same name in the same project are forbidden + maximum 25 characters + must contain only lowercase ASCII letters (a-z) or numbers (0-9) + + type + Specifies the service type and version. + See what [MariaDB service types](/references/import-yaml/type-list#database-services) are currently supported. - | -
mode | -Defines the operation mode of MariaDB service. | -
- HA
- + + mode + Defines the operation mode of MariaDB service. + + HA + Zerops will create a MariaDB cluster with 3 database containers and 2 free database proxies. This mode is suited for production. - - + Zerops always keep the 3 database containers on different physical machines. All your data is stored redundantly in 3 copies. In case of a failure of a container or the underlying physical machine, Zerops automatically disconnects the failed container from the cluster, creates a new container and syncs all data from the remaining 2 copies. Finally the broken container is automatically deleted. - - - NON_HA - + + NON_HA + Zerops will create a MariaDB database installed in a single container. Useful for non-essential data or dev environments. - - + Your data is stored only in a single container. If the container or the underlying physical machine fails, your data since the last backup are lost. Zerops doesn't provide any automatic repairs of single node MariaDB services. - |
-
verticalAutoscaling | -Defines custom vertical auto scaling parameters | -+ + verticalAutoscaling + Defines custom vertical auto scaling parameters + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - | -
- cpuMode | -Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` | -- |
- minCpu/maxCpu | -Set the minCpu or maxCpu in CPU cores (integer). | -- |
- minRam/maxRam | -Set the minRam or maxRam in GB (float). | -- |
- minDisk/maxDisk | -Set the minDisk or maxDisk in GB (float). | -- |
-
-
-
-
-
The base runtime environment contains {data.alpine.default}, the - selected major version of Nginx, Zerops command line tool and `composer`, `git` and `wget`. -
+ selected major version of Nginx, Zerops command line tool and `composer`, `git` and `wget`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -28583,8 +24466,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -28612,38 +24495,25 @@ Do not use the port **:443**. All the incoming traffic is terminated on the Zero Each port has following attributes: -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Nginx environment contains {data.alpine.default}, the selected - major version of Nginx, Zerops command line tool and `composer`, `git` and `wget`. To install + major version of Nginx, Zerops command line tool and `composer`, `git` and `wget`. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -28682,15 +24552,6 @@ Some packages or tools can take a long time to install. Therefore, Zerops caches To invalidate the Zerops runtime cache go to your service detail in Zerops GUI, choose **Service dashboard & runtime containers** from the left menu and click on the **Open pipeline detail** button. Then click on the **Clear runtime prepare cache** button. -
-
-
The prepare runtime container contains {data.alpine.default}, the - selected major version of Nginx, Zerops command line tool and `composer`, `git` and `wget`. -
+ selected major version of Nginx, Zerops command line tool and `composer`, `git` and `wget`. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the build section of your chosen technology. @@ -28841,6 +24700,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Nginx application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Nginx application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Nginx application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Nginx application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [nginx service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
Variable | -Required | -Description | -Default | -
---|---|---|---|
PRERENDER_TOKEN | -Yes | -Your prerender.io service token | -- | -
PRERENDER_HOST | -No | -Prerender service host | -service.prerender.io | -
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
- Learn more about projects in Zerops. See how to - import a whole project into Zerops. -
-- Learn more about services in - Zerops and how to import a service to an existing project. -
-+ repository of your choice. Then click on Import service. + + Learn more about services in + Zerops and how to import a service to an existing project. + The yaml file includes a `buildFromGit` directive, which ensures - a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to + a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Nginx application in Zerops. - -Learn more about how to access build log of your Nginx static service in Zerops. + + 4. Several pipelines are created, one for project creation and the rest for the activation of the services. Wait for all to finish. + + Learn more about how the pipelines can be triggered and about build and deploy processes of a Nginx application in Zerops. -
-- Learn more about how to access your Nginx + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Nginx static service in Zerops. -
-+ + 6. Once the pipeline has finished, click on the activated subdomain URL. You should see a simple page with `Entry added successfully with random data: f47ac10b-58cc-0372-8567-0e02b2c3d479. Total count: 1` + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. - -
-- Learn more about how to use `psql` command-line tool instead or how to import and export data from your database. -
-+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- + +# Nginx > Tutorial > Step By Step As said, there is no need for coding yet, we have created a [Github repository ↗](https://github.com/zeropsio/recipe-php-hello-world), a **_recipe_**, containing the most simple Nginx web application. The repo will be used as a source from which the app will be built. @@ -30894,75 +26356,49 @@ In the detail of each step, you can find a link with more information about the 1. Log in/sign up to [Zerops GUI ↗](https://app.zerops.io) -
- Learn more about projects in - Zerops. See how to import a whole project into Zerops. -
-- Learn more about services in Zerops and how to import a service to an existing project. -
-+ 2. Create a project. + + Learn more about projects in + Zerops. See how to import a whole project into Zerops. + + 3. In the left menu, click on Import services, copy & paste the + contents of this yaml file and click on Import service. + + Learn more about services in Zerops and how to import a service to an existing project. + The yaml file includes a `buildFromGit` directive, which ensures - a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to + a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Nginx application in Zerops. +Learn more about how to access build log of your Nginx static service in Zerops. -Learn more about how to access build log of your Nginx static service in Zerops. - -
-- Learn more about how to access your Nginx + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Nginx static service in Zerops. -
-+ + 6. Once the pipeline has finished, click on the activated subdomain URL: You should see a simple page with `Hello World!` printed. + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. - -
-+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- - -
The base build environment contains {data.alpine.default}, the selected - major version of Node.js, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
+ major version of Node.js, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -31251,8 +26640,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -31268,7 +26657,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Node.js defined in the [base](/nodejs/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -31375,7 +26764,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -31443,7 +26832,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -31473,7 +26862,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -31527,8 +26916,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Node.js Following options are available for Node.js builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Node.js, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -31594,8 +26979,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -31611,38 +26996,25 @@ For example, to connect to a Node.js service with hostname = "app" and port = 30 Each port has following attributes: -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Node.js environment contains {data.alpine.current} the selected - major version of Node.js, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Node.js, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -31691,10 +27063,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.current}, the - selected major version of Node.js, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Node.js, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -31817,6 +27187,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Node.js application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Node.js application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Node.js application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Node.js application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
-
-
Parameter | -Value | -
---|---|
Minimum containers | -1 | -
Maximum containers | -6 | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Node.js service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
verticalAutoscaling | -
- Optional. Defines custom vertical auto scaling parameters.
- + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
-
-
-
-
Template | -Description | -
---|---|
Public read | -
+ Template
+ Description
+
+ Public read
+
Allows anyone:
-
|
-
Public objects read | -
+
+ to read the bucket's location `(s3:GetBucketLocation)`
+ to list all bucket's objects `(s3:ListBucket)`
+ to get any object of the bucket `(s3:GetObject)`
+
+ Public objects read
+
Allows anyone:
-
|
-
Public read write | -
+
+ to read the bucket's location `(s3:GetBucketLocation)`
+ to get any object of the bucket `(s3:GetObject)`
+
+ Public read write
+
Allows anyone:
-
|
-
Public write | -Allows anyone to create objects in the bucket `(PutObject action)` | -
Private | -Denies the access to unauthenticated users. | -
-
-
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -Maximum 255 characters | -
description | -Optional. Description of the new project. | -- |
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the Object storage type objectstorage and version.
- + Set type: `objectstorage` - Limitations: - + Limitations: + Currently `objectstorage` or `object-storage` is available. - |
-
objectStorageSize | -
+
+ objectStorageSize
+
The size of the bucket quota in GB.
- Limitations:
- + Limitations: + Set a whole number between 1 and 100. - |
-
objectStoragePolicy | -
- Optional. Either `objectStoragePolicy` or `objectStorageRawPolicy` is required.
+
+ objectStoragePolicy
+
+ Optional. Either `objectStoragePolicy` or `objectStorageRawPolicy` is required.
Set one of allowed values:
-
|
-
objectStorageRawPolicy | -- Optional. Either `objectStoragePolicy` or `objectStorageRawPolicy` is required. + + `public-read` + `public-objects-read` + `public-read-write` + `public-write` + `private` + + Read more about the basic policy templates. + + objectStorageRawPolicy + + Optional. Either `objectStoragePolicy` or `objectStorageRawPolicy` is required. - Set your own access policy in the IAM Policy JSON format. + Set your own access policy in the IAM Policy JSON format. The `{{ .BucketName }}` variable will be replaced by the bucket name. - | -
-
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of PHP, Zerops command line tool, `composer`, `git` and `wget`. -
+ major version of PHP, Zerops command line tool, `composer`, `git` and `wget`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -34877,8 +29646,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -34894,7 +29663,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of PHP defined in the [base](/php/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `composer`, `git` and `wget` @@ -34999,7 +29768,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -35066,7 +29835,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -35096,7 +29865,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -35150,9 +29919,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current PHP vers Following options are available for PHP builds: -The base runtime environment contains {data.alpine.default}, the - selected major version of PHP, Zerops command line tool and `composer`, `git` and `wget`. -
+ selected major version of PHP, Zerops command line tool and `composer`, `git` and `wget`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -35218,8 +29982,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -35247,38 +30011,25 @@ Do not use the port **:443**. All the incoming traffic is terminated on the Zero Each port has following attributes: -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base PHP environment contains {data.alpine.default}, the selected - major version of PHP, Zerops command line tool and `composer`, `git` and `wget`. To install + major version of PHP, Zerops command line tool and `composer`, `git` and `wget`. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -35317,15 +30068,6 @@ Some packages or tools can take a long time to install. Therefore, Zerops caches To invalidate the Zerops runtime cache go to your service detail in Zerops GUI, choose **Service dashboard & runtime containers** from the left menu and click on the **Open pipeline detail** button. Then click on the **Clear runtime prepare cache** button. -
-
-
The prepare runtime container contains {data.alpine.default}, the - selected major version of PHP, Zerops command line tool and `composer`, `git` and `wget`. -
+ selected major version of PHP, Zerops command line tool and `composer`, `git` and `wget`. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -35477,6 +30217,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your PHP application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your PHP application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your PHP application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your PHP application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
Parameter | -Value | -
---|---|
minimum containers | -1 | -
maximum containers | -6 | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new service will be set to the `hostname` value.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [PHP service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
verticalAutoscaling | -
- Optional. Defines custom vertical auto scaling parameters.
- + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
Parameter | -Internal Connection | -Direct IP Access (TLS) | -
---|---|---|
Hostname/IP | -Service hostname | -Public IP address | -
Port | -5432 | -6432 | -
User | -Identical to the service hostname | -Same as internal | -
Password | -Randomly generated during service creation | -Same as internal | -
Port env variable | -`port` | -`portTls` | -
Connection string env variable | -`connectionString` | -`connectionTlsString` | -
Parameter | -Description | -Limitations | -
---|---|---|
hostname | -A unique service identifier like `postgresql`,`sql`, `db` etc. | -
-
|
-
-
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
- - - The hostname of the new database will be set to the `hostname` value. - - Limitations: - - duplicate services with the same name in the same project are + + The hostname of the new database will be set to the `hostname` value. + + Limitations: + - duplicate services with the same name in the same project are forbidden - + - maximum 25 characters - - must contain only lowercase ASCII letters (a-z) or numbers (0-9) - |
-
- type - | -
+ - must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [PostgreSQL service types](/references/import-yaml/type-list#database-services) are currently supported. - |
-
- mode - | -
+
+ mode
+
Defines the operation mode of the PostgreSQL service.
- - - HA - + + HA + Creates a PostgreSQL cluster with 3 database containers and 2 free database proxies. This mode is suited for production. - - + Zerops always keeps the 3 database containers on different physical machines. All your data is stored redundantly in 3 identical copies. In case of a failure of a container or the underlying physical machine, Zerops automatically disconnects the failed container from the cluster, creates a new container and syncs all data from the remaining 2 copies. Finally, the broken container is automatically deleted. - - - NON_HA - + + NON_HA + Zerops will create a PostgreSQL database installed in a single container. Useful for non-essential data or dev environments. - - + Your data is stored only in a single container. If the container or the the underlying physical machine fails, your data since the last backup are lost. Zerops doesn't provide any automatic repairs of a single node PostgreSQL services. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto-scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto-scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of Python, Zerops command line tool, `pip` and `git`. -
+ major version of Python, Zerops command line tool, `pip` and `git`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -39216,8 +33231,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -39233,7 +33248,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Python defined in the [base](/python/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `pip` and `git` @@ -39295,7 +33310,7 @@ prepareCommands: ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -39361,7 +33376,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -39391,7 +33406,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -39445,8 +33460,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Python v Following options are available for Python builds: -The base runtime environment contains {data.alpine.default}, the - selected major version of Python, Zerops command line tool, `pip` and `git`. -
+ selected major version of Python, Zerops command line tool, `pip` and `git`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -39512,8 +33523,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -39529,38 +33540,25 @@ For example, to connect to a Python service with hostname = "app" and port = 800 Each port has following attributes: -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Python environment contains {data.alpine.default}, the selected - major version of Python, Zerops command line tool, `pip` and `git`. To install additional packages or tools add one or more + major version of Python, Zerops command line tool, `pip` and `git`. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -39608,10 +33606,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default} the - selected major version of Python, Zerops command line tool, `pip` and `git`. -
+ selected major version of Python, Zerops command line tool, `pip` and `git`. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -39732,6 +33728,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Python application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Python application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Python application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Python application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
Parameter | -Value | -
---|---|
minimum containers | -1 | -
maximum containers | -6 | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new service will be set to the `hostname` value.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Python service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
verticalAutoscaling | -
- Optional. Defines custom vertical auto scaling parameters.
- + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
- Learn more about projects in - Zerops. See how to import a whole project into Zerops. -
-- Learn more about services in Zerops and how to import a service to an existing project. -
-+ repository of your choice. Then click on Import service. + + Learn more about services in Zerops and how to import a service to an existing project. + The yaml file includes a `buildFromGit` directive, which ensures - a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to + a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Python application in Zerops. + + 4. Several pipelines are created, one for project creation and the rest for the activation of the services. Wait for all to finish. + + Learn more about how the pipelines can be triggered and about build and deploy processes of a Python application in Zerops. -Learn more about how to access build log of your Python service in Zerops. +Learn more about how to access build log of your Python service in Zerops. -
-- Learn more about how to access your + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Python service in Zerops. -
-+ + 6. Once the pipeline has finished, click on the activated subdomain URL. You should see a simple page with `Entry added successfully with random data: f47ac10b-58cc-0372-8567-0e02b2c3d479. Total count: 1` + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. - -
-
- Learn more about how to use psql
command-line tool instead or how to import and export data from your database.
-
+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- + +# Python > Tutorial > Step By Step As said, there is no need for coding yet, we have created a [Github repository ↗](https://github.com/zeropsio/recipe-python-hello-world), a **_recipe_**, containing the most simple Python web application. The repo will be used as a source from which the app will be built. @@ -41831,69 +35450,50 @@ In the detail of each step, you can find a link with more information about the 1. Log in/sign up to [Zerops GUI ↗](https://app.zerops.io) -
- Learn more about projects in - Zerops. See how to import a whole project into Zerops. -
-- Learn more about services in - Zerops and how to import a service to an existing project. -
-+ 2. Create a project. + + Learn more about projects in + Zerops. See how to import a whole project into Zerops. + + 3. In the left menu, click on Import services, copy & paste the + contents of this yaml file and click on Import service. + + Learn more about services in + Zerops and how to import a service to an existing project. + The yaml file includes a `buildFromGit` directive, which ensures - a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to + a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Python application in Zerops. + + 4. Two pipelines are created, one for project creation and one for the service activation. Wait for both to finish. + + Learn more about how the pipelines can be triggered and about build and deploy processes of a Python application in Zerops. -Learn more about how to access build log of your Python service in Zerops. +Learn more about how to access build log of your Python service in Zerops. -
-- Learn more about how to access your + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Python service in Zerops. -
-+ + 6. Once the pipeline has finished, click on the activated subdomain URL: You should see a simple page with `Hello World!` printed. + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. +For now, check out other features, such as environment variables, runtime log and scaling. -
-+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- + +# Qdrant > Overview [Qdrant](https://qdrant.tech/) on Zerops provides a fully managed vector database solution designed for AI applications. Focus on building vector search features while we handle infrastructure maintenance, high availability, and data protection. @@ -41901,10 +35501,8 @@ Have you got any additional question? Join our **[Discord](https://discord.com/i ## Supported Versions Currently supported Qdrant versions: -
Group | -Description | -
---|---|
/app-version | -Manage application versions, builds, and deployments | -
/auth | -Authentication and token management | -
/billing | -Billing operations and payment management | -
/client | -Client account management | -
/client-user | -User management within client accounts | -
/github | -GitHub repository connections and authorization | -
/gitlab | -GitLab repository connections and authorization | -
/project | -Project management operations | -
/project-env | -Project environment variables management | -
/public-http-routing | -HTTP routing configuration | -
/public-port-routing | -Port routing and firewall rules configuration | -
/service-stack | -Service stack operations and configuration | -
/settings | -System settings and configurations | -
/user | -User account management | -
/user-data | -Environment variables management | -
/user-notification | -User notifications management | -
/user-token | -Personal access tokens management | -
-
service push
command.
+Same as service push command.
### service start/stop
@@ -42394,11 +35970,11 @@ zcli service log [serviceIdOrName] [flags]
**Flags:**
- `--follow` - Continuously poll for new log messages
-- `--format
-
Pause Point | -Behavior | -
---|---|
↪ Before First Command | -Begins running commands for the current phase until next possible pause point | -
✖ On Command Failure | -Skips the failed command and continues deployment | -
✔ After Last Command | -Moves to the next phase (from build to runtime prepare) or completes deployment | -
Pause Point | -Behavior | -
---|---|
↪ Before First Command | -Ends current phase without running any commands | -
✖ On Command Failure | -Ignores the failure and ends current phase with success | -
✔ After Last Command | -Concludes current phase with a successful status | -
Pause Point | -Behavior | -
---|---|
↪ Before First Command | -Marks current phase as failed without running commands | -
✖ On Command Failure | -Ends deployment with original error | -
✔ After Last Command | -Overwrites successful execution with failed status and ends deployment | -
Build phase | -✖ On Command Failure | -
Prepare runtime phase | -➠ Disable | -
Build phase | -➠ Disable | -
Prepare runtime phase | -✔ After Last Command | -
Protocol | -Port | -Service | -
---|---|---|
TCP/UDP | -80 | -HTTP | -
TCP/UDP | -443 | -HTTPS | -
TCP/UDP | -22 | -SSH | -
TCP/UDP | -53 | -DNS | -
TCP/UDP | -123 | -NTP | -
TCP | -587 | -SMTP (with STARTTLS) | -
-
-
-
-
-
-
-
-
-
Sequence | -Description | -
---|---|
`<@` | -The identifier of the beginning of a function expression syntax. | -
`(` | -The identifier of the beginning of the function parameters. | -
`)` | -The identifier of the end of the function parameters. | -
`,` | -A function parameters delimiter. | -
`<` | -Identifier of the beginning of a string expression (without @). | -
`>` | -The identifier of the end of a string expression or a function expression syntax. | -
`|` | -The separator between a string or a function expression content and a modifier name. | -
`\` | -Escaping character. | -
`\<>|` | -Characters that need to be escaped to print them out. | -
Field | -Details | -
---|---|
Syntax: | -`<@generateRandomString(<10>)>` | -
Limitation: | -Length of the string should be an *integer* between `1` and `1024` characters. eg. `<10>`, `<512>`, `<1024>`. | -
Output: | -hR5hS79H4p | -
Field | -Details | -
---|---|
Syntax: | -`<@generateRandomBytes(<10>)>` | -
Limitation: | -Length of the string should be an *integer* between `1` and `1024` characters. eg. `<10>`, `<512>`, `<1024>`. | -
Output: | -hR5hS79H4p | -
Field | -Details | -
---|---|
Syntax: | -`<@generateRandomInt(<200>, <1000>)>` | -
Minimum: | -Required minimum (inclusive) as a signed integer (from -4,611,686,018,427,387,903 to 4,611,686,018,427,387,903). | -
Maximum: | -Required maximum (inclusive) as a signed integer (from -4,611,686,018,427,387,903 to 4,611,686,018,427,387,903). | -
Output: | -823 | -
Field | -Details | -
---|---|
Syntax: | -`<@pickRandom(<640>, <800>, <1024>, <1280>, <1440>, <1920>)>` | -
Parameters: | -The required parameters from which the selection will be made. eg. `<1101>`, `<800>`, `<1920>`, etc. | -
Output: | -1024 | -
Field | -Details | -
---|---|
Syntax: | -`<@setVar( |
-
Variable: | -The required parameter of the internal variable name under which the provided content can be retrieved later using getVar function. The chosen name is case-sensitive. eg. ` |
-
Content: | -Any text you want to be stored, including composition using functions. Already existing variable with the same name is overwritten. | -
Output: | -N4KdtM41WskS74wx | -
Field | -Details | -
---|---|
Syntax: | -`<@getVar(plainPassword)>` | -
Variable: | -The required parameter of the internal variable name that is case-sensitive. The parameter is used as a reference, so it MUST NOT be enclosed in < and >. eg. `(plainPassword)`, `(varName)`, etc | -
Output: | -N4KdtM41WskS74wx | -
Field | -Details | -
---|---|
Syntax: | -`<@generateRandomStringVar( |
-
Variable: | -The required parameter of the internal variable name under which the provided content can be retrieved later using getVar function. The chosen name is case-sensitive. eg. ` |
-
Limitation: | -Required length of the string to be generated in characters (maximum allowed value is 1024). | -
Output: | -hR5hS79H4p | -
Field | -Details | -
---|---|
Syntax: | -`<@generateJWT( |
-
Token Secret: | -The required secret (`string`) used to sign your JWT. | -
JSON Payload: | -The required payload part of the JWT (`string`) in JSON format. | -
Output: | -eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYWRtaW4iLCJpYXQiOjE3Mjkw + Field + Details + + Syntax: + `, )>` + + Token Secret: + The required secret (`string`) used to sign your JWT. + + JSON Payload: + The required payload part of the JWT (`string`) in JSON format. + + Output: + eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYWRtaW4iLCJpYXQiOjE3Mjkw Njk4NTcsImlzcyI6Inplcm9wcyJ9.xPrqHDtGhK5c7WMJliguwBeKI29qzAoD7KXrtACb - jio | -
Field | -Details | -
---|---|
Syntax: | -`<@getDatetime( |
-
Mask: | -The required parameter of the chosen timezone.
- eg. ` |
-
Timezone: | -
+Returns the current date and time in a specified mask pattern and a chosen timezone.
+
+ Field
+ Details
+
+ Syntax:
+ `, )>`
+
+ Mask:
+ The required parameter of the chosen timezone.
+ eg. ``
+
+ Timezone:
+
The optional parameter of the chosen timezone. It's possible to select from three different formats: Abbreviation, Location, and POSIX. If not specified, the GMT timezone is set by default.
- You can see the complete listing of all possible values. POSIX format uses the opposite sign. Times to the west are positive, to the east negative.
+ You can see the complete listing of all possible values. POSIX format uses the opposite sign. Times to the west are positive, to the east negative.
For Central European Time, you can use `CET`, `Europe/Prague`, `Etc/GMT-2` (summer), `Etc/GMT-1` (winter). Abbreviated and location formats return values with the currently valid DST.
- eg. ` |
-
Output: | -11.12.2022 18:06:13 | -
Field | -Details | -
---|---|
Syntax: | -`<@generateED25519Key( |
-
Variants: | -The base name parameter stores all generated key versions as internal variables, combined with the Available Variants. | -
Variant | -Description | -Retrieving the value | -
---|---|---|
Public | -Public key version. This value is also returned by the called function. | -`<@getVar(KeyPublic)>` | -
PublicSsh | -SSH formatted public key version. For use as the authorized key file. | -`<@getVar(KeyPublicSsh)>` | -
Private | -Private key version in the standard format. Not usable for OpenSSH. | -`<@getVar(KeyPrivate)>` | -
PrivateSsh | -Private key version in the OpenSSH format. | -`<@getVar(KeyPrivateSsh)>` | -
Field | -Details | -
---|---|
Syntax: | -`<@generateRSA2048Key( |
-
Variants: | -The base name parameter stores all generated key versions as internal variables, combined with the Available Variants. | -
Variant | -Description | -How to use with: `<@generateRSA2048Key( |
-
---|---|---|
Public | -Public key version. This value is also returned by the called function. | -`<@getVar(KeyPublic)>` | -
PublicSsh | -SSH formatted public key version. For use as the authorized key file. | -`<@getVar(KeyPublicSsh)>` | -
Private | -Private key version in the standard format. | -`<@getVar(KeyPrivate)>` | -
Field | -Details | -
---|---|
Syntax: | -`<@generateRSA4096Key( |
-
Variants: | -The base name parameter stores all generated key versions as internal variables, combined with the Available Variants. | -
Variant | -Description | -How to use with: `<@generateRSA4096Key( |
-
---|---|---|
Public | -Public key version. This value is also returned by the called function. | -`<@getVar(KeyPublic)>` | -
PublicSsh | -SSH formatted public key version. For use as the authorized key file. | -`<@getVar(KeyPublicSsh)>` | -
Private | -Private key version in the standard format. | -`<@getVar(KeyPrivate)>` | -
Name | -Description | -
---|---|
sha256 | -Generate a hash of the incoming string using sha256 algorithm. | -
sha512 | -Generate a hash of the incoming string using sha512 algorithm. | -
bcrypt | -
- Generate a hash of the incoming string using bcrypt algorithm. + Name + Description + + sha256 + Generate a hash of the incoming string using sha256 algorithm. + + sha512 + Generate a hash of the incoming string using sha512 algorithm. + + bcrypt + + Generate a hash of the incoming string using bcrypt algorithm. Fixed configuration: Number of cycles = 11 - |
-
argon2id | -
- Generate a hash of the incoming string using argon2id algorithm. + + argon2id + + Generate a hash of the incoming string using argon2id algorithm. Fixed configuration: Memory = 64MiB, Iterations = 4, Parallelism = 4, SaltLen = 16B, KeyLength = 32B - |
-
toHex | -Encodes provided string/bytes into hexadecimal | -
toString | -Encodes provided string/bytes into string comprised of [a-zA-Z0-9_-.] | -
upper | -Maps all unicode letters to their upper case | -
lower | -Maps all unicode letters to their lower case | -
title | -Maps all words to title case (first letter upper case, rest lower case) | -
noop | -Does nothing - used in tests | -
Service Type | -Versions | -
---|---|
Nginx | -|
Static | -
Service Type | -Versions | -
---|---|
Alpine | -|
Ubuntu | -
Service Type | -Versions | -
---|---|
Bun | -|
Deno | -|
.NET | -|
Elixir | -|
Gleam | -|
- | |
Java | -|
Node.js | -|
PHP & Apache | -|
PHP & nginx | -|
Python | -|
Rust | -
Database Type | -Versions | -
---|---|
KeyDB | -|
MariaDB | -|
PostgreSQL | -|
Qdrant | -|
Valkey | -
Search Engine | -Versions | -
---|---|
Elasticsearch | -|
Meilisearch | -|
Typesense | -
Message Broker | -Versions | -
---|---|
Kafka | -|
NATS | -
Database Type | -Versions | -
---|---|
Object storage | -|
Shared storage | -
Field | -Type | -Description | -
---|---|---|
project | -object | -_REQUIRED, if a whole project is imported_ Only one project can be defined. |
-
name | -string, REQUIRED | -The name of the new project. Duplicates are allowed. | -
description | -string | -Description of the new project. | -
corePackage | -string | -[Core package](/features/infrastructure#project-core) of the new project. Values: LIGHT/SERIOUS (default LIGHT) |
-
tags | -list of strings | -One or more string tags. Tags provide better orientation in projects. |
-
envVariables | -map[string]string | -[Project-level environment variables](/features/env-variables#project-variables) that are available to all services in the project. | -
Field | -Type | -Description | -
---|---|---|
services | -list of objects, REQUIRED | -At least one service is required. | -
hostname | -string, REQUIRED | -+ Field + Type + Description + + services + list of objects, REQUIRED + At least one service is required. + + hostname + string, REQUIRED + The unique service identifier. Limitations: - duplicates in the same project forbidden - maximum 25 characters, lowercase ASCII letters (a-z) or numbers (0-9) only - | -
type | -enum, REQUIRED | -Specifies the service type and version. See [supported types](/references/import-yaml/type-list). | -
mode | -enum | -Values: HA / NON_HA (default NON_HA) Defines the operation mode of the service. |
-
envSecrets | -map[string]string | -Environment variables that are blurred by default in Zerops GUI. Can be edited or deleted in Zerops GUI. | -
dotEnvSecrets | -string (multiline) | -Environment variables in .env file format that are automatically created as secret envs. | -
objectStorageSize | -integer | -Object storage size in GB. | -
objectStoragePolicy | -enum | -+ + type + enum, REQUIRED + Specifies the service type and version. See [supported types](/references/import-yaml/type-list). + + mode + enum + Values: HA / NON_HA (default NON_HA)Defines the operation mode of the service. + + envSecrets + map[string]string + Environment variables that are blurred by default in Zerops GUI. Can be edited or deleted in Zerops GUI. + + dotEnvSecrets + string (multiline) + Environment variables in .env file format that are automatically created as secret envs. + + objectStorageSize + integer + Object storage size in GB. + + objectStoragePolicy + enum + Values: **private / public-read / public-objects-read / public-write / public-read-write / custom** Select a predefined AWS S3 bucket access policy. - | -
objectStorageRawPolicy | -json | -+ + objectStorageRawPolicy + json + Define your own AWS S3 bucket access policy. See [AWS docs](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-policy-language-overview.html) for details. Use `{{ .BucketName }}` placeholder if you need to use bucket name in your custom policy rules. - | -
buildFromGit | -string (URL) | -+ + buildFromGit + string (URL) + A URL of a Github or Gitlab repository used for a one-time build of your service. - | -
enableSubdomainAccess | -boolean | -
- Default: `false` + + enableSubdomainAccess + boolean + + Default: `false` Set `true`, if you want to enable a public access to your service via a Zerops subdomain. Not suitable for production. - |
-
priority | -integer | -+ + priority + integer + Services are sorted before creation by priority in descending order, i.e. the higher the priority the sooner the service is created. - | -
override | -boolean | -
- Default: `false` - This only works for **runtime** services. + + override + boolean + + Default: `false` + This only works for **runtime** services. The parameter allows you to replace an existing runtime service with the same hostname byt triggering a redeploy if the service already exists. - |
-
Field | -Type | -Description | -
---|---|---|
minCpu | -integer | -Minimum number of virtual CPUs | -
maxCpu | -integer | -Maximum number of virtual CPUs | -
cpuMode | -enum | -Values: **SHARED / DEDICATED** | -
minRam | -float | -+ Field + Type + Description + + minCpu + integer + Minimum number of virtual CPUs + + maxCpu + integer + Maximum number of virtual CPUs + + cpuMode + enum + Values: **SHARED / DEDICATED** + + minRam + float + Minimum RAM in GB that each container of the service can scale down to. - | -
maxRam | -float | -+ + maxRam + float + Maximum RAM in GB that each container of the service can scale up to. - | -
minDisk | -float | -+ + minDisk + float + Minimum disk space in GB that each container of the service can scale down to. - | -
maxDisk | -float | -+ + maxDisk + float + Maximum disk space in GB that each container of the service can scale up to. - | -
startCpuCoreCount | -integer | -+ + startCpuCoreCount + integer + Number of CPU cores with which each container starts. - | -
minFreeCpuCores | -float | -+ + minFreeCpuCores + float + Minimum number of unused CPU cores before a container starts scaling. - | -
minFreeCpuPercent | -float | -+ + minFreeCpuPercent + float + Minimum percentage of unused CPU cores before a container starts scaling. - | -
minFreeRamGB | -float | -+ + minFreeRamGB + float + Minimum unused memory in GB before a container starts scaling. - | -
minFreeRamPercent | -float | -+ + minFreeRamPercent + float + Minimum percentage of unused memory before a container starts scaling. - | -
Field | -Type | -Description | -
---|---|---|
minContainers | -integer | -Minimum number of containers of the service. Default: 1, maximum value: 10 |
-
maxContainers | -integer | -Maximum number of containers of the service. Maximum value: 10 |
-
Field | -Type | -Description | -
---|---|---|
mount | -list of strings | -Mount shared storage to the service. `buildFromGit` must be filled. | -
Field | -Type | -Description | -
---|---|---|
nginxConfig | -string (multiline) | -Insert full nginx config. | -
Field | -Type | -Description | -
---|---|---|
zeropsSetup | -string | -Specifies which service setup to use. This should match a setup name found in either the `zeropsYaml` parameter (if provided) or the `zerops.yaml` file in the repository root. If not specified, defaults to the service hostname. | -
zeropsYaml | -object | -Contains the full [zerops.yaml configuration](/zerops-yaml/specification). If provided, this will be used instead of looking for a `zerops.yaml` file in the repository. | -
Port | -Status | -Description | -
---|---|---|
587 | -✅ Allowed | -Modern SMTP submission with STARTTLS | -
25 | -❌ Blocked | -Traditional SMTP (security risk) | -
465 | -❌ Blocked | -Legacy SMTPS (deprecated) | -
Service | -Host | -Port | -Secure | -Username | -Password | -
---|---|---|---|---|---|
Gmail | -smtp.gmail.com | -587 | -false | -your.name@gmail.com | -App Password required | -
Google Workspace | -smtp-relay.gmail.com | -587 | -false | -your.name@your-domain.com | -Regular password (App Password if using 2FA) | -
Office 365 | -smtp.office365.com | -587 | -false | -your.name@your-domain.com | -Account password | -
Provider | -Host | -Port | -Username | -Password | -Features | -
---|---|---|---|---|---|
SendGrid | -smtp.sendgrid.net | -587 | -apikey | -SendGrid API key | -• Free tier available • Real-time analytics • Webhooks • Spam detection |
-
Mailgun | -smtp.mailgun.org | -587 | -postmaster@your-domain.com | -Mailgun password | -• Free tier available • Email validation • Routing rules • Delivery analytics |
-
Amazon SES | -email-smtp.us-east-1.amazonaws.com | -587 | -SES access key ID | -SES secret access key | -• Pay as you go pricing • AWS integration • High deliverability • Auto-scaling |
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of Rust, Zerops command line tool, `npm` , `yarn`, `git` and `npx` tools. -
+ major version of Rust, Zerops command line tool, `npm` , `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -46765,8 +39694,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -46782,7 +39711,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Rust defined in the [base](/rust/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -46884,7 +39813,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -46949,7 +39878,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -46979,7 +39908,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -47033,8 +39962,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Rust ver Following options are available for Rust builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Rust, Zerops command line tool, npm, yarn, git and npx tools. -
:::info You can change the base environment when you need to. Just simply modify the zerops.yaml in your repository. @@ -47101,8 +40026,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -47118,40 +40043,25 @@ For example, to connect to a Rust service with hostname = "app" and port = 8080 Each port has following attributes: - -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Rust environment contains {data.alpine.default}, the selected - major version of Rust, Zerops command line tool and `npm` , `yarn`, `git` and `npx` tools. To install additional packages or tools add one or + major version of Rust, Zerops command line tool and `npm` , `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -47190,15 +40100,6 @@ Some packages or tools can take a long time to install. Therefore, Zerops caches To invalidate the Zerops runtime cache go to your service detail in Zerops GUI, choose **Service dashboard & runtime containers** from the left menu and click on the **Open pipeline detail** button. Then click on the **Clear runtime prepare cache** button. -
-
-
The prepare runtime container contains {data.alpine.default}, the - selected major version of Rust, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Rust, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -47331,6 +40230,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Rust application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Rust application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Rust application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Rust application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
Parameter | -Value | -
---|---|
minimum containers | -1 | -
maximum containers | -6 | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Rust service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
-
-
-
-
-
-
-
-
build.base
and run.base
sections in `zerops.yaml`.
+This is a list of all currently supported versions of technologies that can be used for build.base and run.base sections in `zerops.yaml`.
:::note
Versions listed on the same line are aliases of the same underlying version.
:::
-
## Runtime services
-Service Type | -Supported OS | -Versions | -|
---|---|---|---|
Build / Runtime | -|||
Bun | -`ubuntu` / `alpine` | -||
Deno | -`ubuntu` | -||
.NET | -`ubuntu` / `alpine` | -||
Elixir | -`ubuntu` / `alpine` | -||
Gleam | -`ubuntu` | -||
Go | -`ubuntu` / `alpine` | -||
Java | -`ubuntu` / `alpine` | -||
Node.js | -`ubuntu` / `alpine` | -||
Python | -`ubuntu` / `alpine` | -||
Rust | -`ubuntu` / `alpine` | -||
- | - | Build | -Runtime | -
PHP + Apache | -`ubuntu` / `alpine` | -||
PHP + nginx | -`ubuntu` / `alpine` | -
Service Type | -Supported OS | -Versions | -|
---|---|---|---|
Build | -Runtime | -||
nginx | -`ubuntu`/`alpine` | -- | -|
static | -`ubuntu`/`alpine` | -- | -
Service Type | -Supported OS | -Versions | -|
---|---|---|---|
Build / Runtime | -|||
Alpine | -`alpine` | -||
Ubuntu | -`ubuntu` | -
The base build environment contains {data.alpine.default}, the selected major version of Bun, - Zerops command line tool, `npm`, + Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -298,8 +248,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -315,7 +265,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Bun defined in the [base](bun/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -422,7 +372,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -490,7 +440,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -520,7 +470,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -574,8 +524,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Bun vers Following options are available for Bun runtimes: -The base runtime environment contains {data.alpine.default}, the selected major version of Bun, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -641,8 +587,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -663,16 +609,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Bun runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Bun environment contains {data.alpine.default} the selected - major version of Bun, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Bun, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -721,10 +666,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -- The prepare runtime container contains {data.alpine.default}, the selected major version of Bun, Zerops command line tool and `npm`, + The prepare runtime container contains {data.alpine.default}, the selected major version of Bun, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -847,6 +790,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Bun service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of Deno, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
+ major version of Deno, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -3078,8 +2614,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -3095,7 +2631,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Deno defined in the [base](/deno/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -3200,7 +2736,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -3268,7 +2804,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -3298,7 +2834,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -3352,8 +2888,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Deno ver Following options are available for Deno builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Deno, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -3419,8 +2951,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -3441,16 +2973,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Deno runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Deno environment contains {data.alpine.default} the selected - major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -3499,10 +3030,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Deno, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -3625,6 +3154,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Deno service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of .NET, Zerops command line tool, `ASP .NET` and `git`. -
+ major version of .NET, Zerops command line tool, `ASP .NET` and `git`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -6088,8 +5217,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -6105,7 +5234,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of .NET defined in the [base](/dotnet/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `ASP .NET` and `git` @@ -6199,7 +5328,7 @@ buildCommands: #### Command exit code -If any command fails, it returns an exit code other than 0 and the build is canceled. Read the [build log](/dotnet/how-to/logs#build-log) to troubleshoot the error. If the error log doesn't contain any specific error message, try to run your build with the `--verbosityThe base runtime environment contains {data.alpine.default}, the - selected major version of .NET, Zerops command line tool and `ASP .NET` and `git`. -
+ selected major version of .NET, Zerops command line tool and `ASP .NET` and `git`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -6427,8 +5552,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -6444,39 +5569,25 @@ For example, to connect to a .NET service with hostname = "app" and port = 5000 Each port has following attributes: -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base .NET environment contains {data.alpine.default}, the selected - major version of .NET, Zerops command line tool and `ASP .NET` and `git`. To install additional packages + major version of .NET, Zerops command line tool and `ASP .NET` and `git`. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -6525,12 +5636,10 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the selected major version of .NET, - Zerops command line tool and + Zerops command line tool and `ASP .NET` and `git`. -
The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -6651,6 +5760,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your .NET application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your .NET application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your .NET application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your .NET application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
Parameter | -Description | -Limitations | -
---|---|---|
name | -The name of the new project. Duplicates are allowed. | -- |
description | -Optional. Description of the new project. | -Maximum 255 characters. | -
tags | -Optional. One or more string tags. Tags do not have a functional meaning, they only provide better orientation in projects. | -- |
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|
-
type | -+ Limitations: + + duplicate services with the same name in the same project are forbidden + maximum 25 characters + must contain only lowercase ASCII letters (a-z) or numbers (0-9) + + type + Specifies the service type and version. See what [.NET service types](/references/import-yaml/type-list#runtime-services) are currently supported. - | -
verticalAutoscaling | -- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - | -
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of Elixir, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
+ major version of Elixir, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -8974,8 +7681,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -8991,7 +7698,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Elixir defined in the [base](/elixir/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -9098,7 +7805,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -9166,7 +7873,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -9196,7 +7903,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -9250,8 +7957,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Elixir v Following options are available for Elixir builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Elixir, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -9317,8 +8020,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -9339,16 +8042,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Elixir runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Elixir environment contains {data.alpine.default} the selected - major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -9397,10 +8099,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Elixir, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -9523,6 +8223,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Elixir service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
-
-
-
-
-
-
Field name | -Allowed values | -
---|---|
Minute | -0-59 | -
Hour | -0-23 | -
Day | -1-31 | -
Month | -1-12 | -
Week Day | -0–7; both 0 and 7 represent Sunday | -
-
-
Region | -Location | -Coverage Area | -|
---|---|---|---|
EU | -CZ | -Prague, Czech Republic | -Primary European coverage + failover for all regions | -
DE | -Falkenstein, Germany | -||
UK | -London, United Kingdom | -UK and surrounding areas | -|
AU | -Sydney, Australia | -Australia and Oceania | -|
SG | -Singapore, Singapore | -Southeast Asia | -|
CA | -Beauharnois, Canada | -North America | -
Pattern | -Description | -Example | -
---|---|---|
`/*` | -Purges all content | -Useful after major updates | -
`/images/*` | -Purges all content in a directory | -Clear all cached images | -
`/css/main.css$` | -Purges a specific file | -Update a single CSS file | -
`/2023*` | -Purges content starting with pattern | -Clear content with date prefix | -
-
- | Lightweight Core | -Serious Core | -
---|---|---|
Infrastructure | -Single container (limited redundancy) | -Multi-container (highly available) | -
SSL Termination | -||
Automatic Certificate Generation | -||
Proxy / Load Balancer | -||
IPv6 Address | -||
Build Time | -15 hours | -150 hours | -
Backup Space | -5 GB | -25 GB | -
Egress | -100 GB | -3 TB | -
Failover Protection | -Limited | -Comprehensive | -
-
-
zcli service deploy
command instead.
+If you just want to [deploy](#deploy-phase) your already built application to Zerops, use the zcli service deploy command instead.
## Build phase
-
-
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - major version of Gleam, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
+ major version of Gleam, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -16762,8 +14605,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -16779,7 +14622,7 @@ _OPTIONAL._ Customises the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Gleam defined in the [base](/gleam/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `npm`, `yarn`, `git` and `npx` tools @@ -16886,7 +14729,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -16954,7 +14797,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -16984,7 +14827,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -17038,8 +14881,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Gleam ve Following options are available for Gleam runtimes: -The base runtime environment contains {data.alpine.default}, the selected major version of Gleam, Zerops command line tool, `npm`, `yarn`, `git` and `npx` tools. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -17105,8 +14944,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -17127,16 +14966,15 @@ Each port has following attributes: | port | Defines the port number. You can set any port number between _10_ and _65435_. Ports outside this interval are reserved for internal Zerops systems. | | protocol | **Optional.** Defines the protocol. Allowed values are `TCP` or `UDP`. Default value is `TCP`. | | httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | +| httpSupport | **Optional.** `httpSupport = true` is the default setting for TCP protocol. Set `httpSupport = false` if a web server isn't running on the port. Zerops uses this information for the configuration of [public access](/features/access). `httpSupport = true` is available only in combination with the TCP protocol. | ### prepareCommands _OPTIONAL._ Customises the Gleam runtime environment by installing additional dependencies or tools to the runtime base environment. -The base Gleam environment contains {data.alpine.default} the selected - major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install + major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -17185,10 +15023,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. -
+ selected major version of Gleam, Zerops command line tool and `npm`, `yarn`, `git` and `npx` tools. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -17311,6 +15147,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.
-
-
-
-
-
- Minimum containers - | -1 | -
- Maximum containers - | -6 | -
Parameter | -Description | -
---|---|
- hostname - | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
-
|
-
- type - | -
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Gleam service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
- verticalAutoscaling - | -
- Optional. Defines custom vertical auto scaling parameters. + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- - cpuMode - | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- - minCpu/maxCpu - | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- - minRam/maxRam - | -- Optional. Set the minRam or maxRam in GB (float). - | -
- - minDisk/maxDisk - | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
- minContainers - | -
- Optional. Default = 1. Defines the minimum number of containers
- for horizontal autoscaling. - - Limitations: - + + - cpuMode + + Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` + + - minCpu/maxCpu + + Optional. Set the minCpu or maxCpu in CPU cores (integer). + + - minRam/maxRam + + Optional. Set the minRam or maxRam in GB (float). + + - minDisk/maxDisk + + Optional. Set the minDisk or maxDisk in GB (float). + + minContainers + + Optional. Default = 1. Defines the minimum number of containers + for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- maxContainers - | -
- Defines the maximum number of containers for horizontal autoscaling. - - Limitations: - + + maxContainers + + Defines the maximum number of containers for horizontal autoscaling. + + Limitations: + Current maximum value = 6. - |
-
- envSecrets - | -- Optional. Defines one or more secret env variables as a key value - map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
The base build environment contains {data.alpine.default}, the selected - version of Go, Zerops command line tool, `git` and `wget`. -
+ version of Go, Zerops command line tool, `git` and `wget`. :::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -19535,8 +16969,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -19552,7 +16986,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Go defined in the [base](/go/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `git` and `wget` @@ -19657,7 +17091,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -19723,7 +17157,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -19753,7 +17187,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -19807,8 +17241,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Go versi Following options are available for Go builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Go, Zerops command line tool, `git` and `wget`. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -19874,8 +17304,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customised. @@ -19891,39 +17321,24 @@ For example, to connect to a Go service with hostname = "app" and port = 8080 fr Each port has following attributes: - -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Go environment contains {data.alpine.default}, the selected - major version of Go, Zerops command line tool and `git` and `wget`. To install additional packages or tools add one or more prepare commands: -
+ major version of Go, Zerops command line tool and `git` and `wget`. To install additional packages or tools add one or more prepare commands: ```yaml zerops: @@ -19972,10 +17387,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the - selected major version of Go, Zerops command line tool and `git` and `wget`. -
+ selected major version of Go, Zerops command line tool and `git` and `wget`. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -20098,6 +17511,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Go application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Go application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Go application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Go application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|
-
type | -
+ Limitations:
+
+ duplicate services with the same name in the same project are forbidden
+ maximum 25 characters
+ must contain only lowercase ASCII letters (a-z) or numbers (0-9)
+
+ type
+
Specifies the service type and version.
- + See what [Go service types](/references/import-yaml/type-list#runtime-services) are currently supported. - |
-
verticalAutoscaling | -
- Optional. Defines custom vertical auto scaling parameters.
- + + verticalAutoscaling + + Optional. Defines custom vertical auto scaling parameters. + All verticalAutoscaling attributes are optional. Not specified attributes will be set to their default values. - |
-
- cpuMode | -- Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED` - | -
- minCpu/maxCpu | -- Optional. Set the minCpu or maxCpu in CPU cores (integer). - | -
- minRam/maxRam | -- Optional. Set the minRam or maxRam in GB (float). - | -
- minDisk/maxDisk | -- Optional. Set the minDisk or maxDisk in GB (float). - | -
minContainers | -
- Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
+
+ - cpuMode
+
+ Optional. Accepts `SHARED`, `DEDICATED` values. Default is `SHARED`
+
+ - minCpu/maxCpu
+
+ Optional. Set the minCpu or maxCpu in CPU cores (integer).
+
+ - minRam/maxRam
+
+ Optional. Set the minRam or maxRam in GB (float).
+
+ - minDisk/maxDisk
+
+ Optional. Set the minDisk or maxDisk in GB (float).
+
+ minContainers
+
+ Optional. Default = 1. Defines the minimum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
maxContainers | -
- Defines the maximum number of containers for horizontal autoscaling.
+
+ maxContainers
+
+ Defines the maximum number of containers for horizontal autoscaling.
- Limitations:
- + Limitations: + Current maximum value = 6. - |
-
envSecrets | -- Optional. Defines one or more secret env variables as a key value map. See env variable restrictions. - | -
-
-
-
-
-
-
-
-
Type | -Environment | -Defined in | -
---|---|---|
basic | -build | -zerops.yaml | -
basic | -runtime | -zerops.yaml | -
secret | -runtime | -Zerops GUI | -
-
-
-
-
-
-
-
-
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
-
-
-
-
-
- Learn more about projects in Zerops. See how to import a whole project into Zerops. -
-- Learn more about services in Zerops and how to import a service to an existing project. -
-- The yaml file includes a `buildFromGit` directive, which ensures a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Go application in Zerops. - -Learn more about how to access build log of your Go service in Zerops. -
-- Learn more about how to access your Go service in Zerops. -
-+ 2. Create a project. + + Learn more about projects in Zerops. See how to import a whole project into Zerops. + + 3. In the left menu, click on Import services, copy & paste the contents of the `import-services.yaml` config file from the recipe repository of your choice. Then click on Import service. + + Learn more about services in Zerops and how to import a service to an existing project. + + The yaml file includes a `buildFromGit` directive, which ensures a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. + + 4. Several pipelines are created, one for project creation and the rest for the activation of the services. Wait for all to finish. + + Learn more about how the pipelines can be triggered and about build and deploy processes of a Go application in Zerops. + +Learn more about how to access build log of your Go service in Zerops. + + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Go service in Zerops. + + 6. Once the pipeline has finished, click on the activated subdomain URL. You should see a simple page with `Entry added successfully with random data: f47ac10b-58cc-0372-8567-0e02b2c3d479. Total count: 1` + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. +For now, check out other features, such as environment variables, runtime log and scaling. -
-- Learn more about how to use `psql` command-line tool instead or how to import and export data from your database. -
-+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- + +# Go > Tutorial > Step By Step As said, there is no need for coding yet, we have created a [Github repository ↗](https://github.com/zeropsio/recipe-go-hello-world), a **_recipe_**, containing the most simple Go web application. The repo will be used as a source from which the app will be built. @@ -22160,114 +19214,91 @@ In the detail of each step, you can find a link with more information about the 1. Log in/sign up to [Zerops GUI ↗](https://app.zerops.io) -
- Learn more about projects in - Zerops. See how to import a whole project into Zerops. -
-- Learn more about services in Zerops and how to import a service to an existing project. -
-+ 2. Create a project. + + Learn more about projects in + Zerops. See how to import a whole project into Zerops. + + 3. In the left menu, click on Import services, copy & paste the + contents of this yaml file and click on Import service. + + Learn more about services in Zerops and how to import a service to an existing project. + The yaml file includes a `buildFromGit` directive, which ensures - a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to + a one-time build from Git repository source. See how to connect a Github or Gitlab repository to be able to trigger automatic builds & deploys. -
-- Learn more about how the pipelines can be triggered and about build and deploy processes of a Go application in Zerops. + + 4. Two pipelines are created, one for project creation and one for the service activation. Wait for both to finish. + + Learn more about how the pipelines can be triggered and about build and deploy processes of a Go application in Zerops. -Learn more about how to access build log of your Go service in Zerops. +Learn more about how to access build log of your Go service in Zerops. -
-- Learn more about how to access your Go + 5. In the service detail, open the Public access & internal ports section, and Enable Zerops Subdomain. + + Learn more about how to access your Go service in Zerops. -
-+ + 6. Once the pipeline has finished, click on the activated subdomain URL: You should see a simple page with `Hello World!` printed. + Congratulations! You have created your first application in Zerops, and we hope to see your own projects soon. -For now, check out other features, such as environment variables, runtime log and scaling. +For now, check out other features, such as environment variables, runtime log and scaling. -
-+ :::tip Have you got any additional question? Join our **[Discord](https://discord.com/invite/WDvCZ54)** community to get help from our team and other members. ::: +---------------------------------------- +# Homepage -
The base build environment contains {data.alpine.default}, the selected version - of Java, Zerops command line tool, `git` and + of Java, Zerops command line tool, `git` and `wget`. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -22700,8 +19620,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -22717,7 +19637,7 @@ _OPTIONAL._ Customizes the build environment by installing additional dependenci The base build environment contains: -- {data.alpine.default} +- {data.alpine.default} - selected version of Java defined in the [base](/java/how-to/build-pipeline#base) attribute - [Zerops command line tool](/references/cli) - `git` and `wget` @@ -22822,7 +19742,7 @@ If the command ends successfully, it returns the exit code 0 and Zerops triggers ### deployFiles -_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. +_REQUIRED._ Selects which files or folders will be deployed after the build has successfully finished. To filter out specific files or folders, use `.deployignore` file. ```yaml # REQUIRED. Select which files / folders to deploy after @@ -22888,7 +19808,7 @@ By default, `./src/assets/fonts` deploys to `/var/www/src/assets/fonts`, keeping ::: #### .deployignore -Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. +Add a `.deployignore` file to the root of your project to specify which files and folders Zerops should ignore during deploy. The syntax follows the same pattern format as `.gitignore`. To ignore a specific file or directory path, start the pattern with a forward slash (`/`). Without the leading slash, the pattern will match files with that name in any directory. @@ -22918,7 +19838,7 @@ This example above ignores `file.txt` in ANY directory named `src`, such as: - `/src/src/file.txt` :::note -`.deployignore` file also works with `zcli service deploy` command. +`.deployignore` file also works with `zcli service deploy` command. ::: ### cache @@ -22971,8 +19891,6 @@ If you don't specify the `run.base` attribute, Zerops keeps the current Java ver Following options are available for Java builds: -The base runtime environment contains {data.alpine.default}, the selected major version of Java, Zerops command line tool, git` and `wget`. -
:::info You can change the base environment when you need to. Just simply modify the `zerops.yaml` in your repository. @@ -23038,8 +19954,8 @@ Default value is `alpine`. We are currently using following os version: -- {data.alpine.default} -- {data.ubuntu.default} +- {data.alpine.default} +- {data.ubuntu.default} :::caution The os version is fixed and cannot be customized. @@ -23055,41 +19971,26 @@ For example, to connect to a Java service with hostname = "app" and port = 8080 Each port has following attributes: - -Parameter | -Description | -
---|---|
port | -Defines the port number. You can set any port number between 10 and 65435. Ports outside this interval are reserved for internal Zerops systems. | -
protocol | -Optional. Defines the protocol. Allowed values are TCP or UDP . Default value is TCP . |
-
httpSupport | -Optional. httpSupport = true is the default setting for TCP protocol. Set httpSupport = false if a web server isn't running on the port. Zerops uses this information for the configuration of public access. httpSupport = true is available only in combination with the TCP protocol. |
-
The base Java environment contains {data.alpine.default}, the selected major - version of Java, Zerops command line tool and + version of Java, Zerops command line tool and `git` and `wget`. To install additional packages or tools add one or more prepare commands: -
```yaml zerops: @@ -23138,10 +20039,8 @@ You can configure your prepare commands to be run in a single shell instance or ### Copy folders or files from your build container -The prepare runtime container contains {data.alpine.default}, the selected - major version of Java, Zerops command line tool and `git` and `wget`. -
+ major version of Java, Zerops command line tool and `git` and `wget`. The prepare runtime container does not contain your application code nor the built application. If you need to copy some folders or files from the build container to the runtime container (e.g. a configuration file) use the `addToRunPrepare` attribute in the [build section](#build-pipeline-configuration). @@ -23263,6 +20162,7 @@ Following attributes are available: | **path** | Defines the URL path of the HTTP GET request.Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Java application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Java application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
Parameter | -Description | -
---|---|
command | -
- Defines a local command to be run. - The command has access to the same environment variables as your Java application. + Parameter + Description + + command + + Defines a local command to be run. + The command has access to the same environment variables as your Java application. A single string is required. If you need to run multiple commands create a shell script or, use a multiline format as in the example below. - |
-
-
-
-
- minimum containers - | -1 | -
- maximum containers - | -6 | -
Parameter | -Description | -
---|---|
hostname | -
+ Parameter
+ Description
+
+ hostname
+
The unique service identifier.
The hostname of the new database will be set to the `hostname` value.
- Limitations:
-
|