Skip to content

Commit 882d794

Browse files
feat(containers): concepts improvements
1 parent 300d765 commit 882d794

File tree

1 file changed

+70
-11
lines changed

1 file changed

+70
-11
lines changed

serverless/containers/concepts.mdx

Lines changed: 70 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -31,43 +31,83 @@ Refer to the [dedicated documentation](/serverless/containers/reference-content/
3131

3232
## Container
3333

34-
A container is a package of software that includes all dependencies: code, runtime, configuration, and system libraries so that it can run on any host system. Scaleway provides custom Docker images that are entirely handled for you in the cloud. With Containers, you can rely on your favorite technologies such as Django, or Ruby on Rails.
34+
A container is a package of software that includes all dependencies: code, runtime, configuration, and system libraries so that it can run on any host system. Scaleway provides custom Docker images that are entirely handled for you in the cloud.
3535

3636
## Container Registry
3737

38-
Container Registry is the place where your images are stored before being deployed.
38+
Container Registry is the place where your images are stored before being deployed, we recommend using Scaleway Container Registry for a better integration. [Migration guide](/serverless/containers/api-cli/migrate-external-image-to-scaleway-registry/).
3939

4040
## CRON trigger
4141

42-
A CRON trigger is a mechanism used to automatically invoke a Serverless Function at a specific time on a recurring schedule. It works similarly to a traditional Linux [cron job](https://en.wikipedia.org/wiki/Cron), using the `* * * * *` format, and uses the **UTC** time zone. Refer to our [cron schedules reference](/serverless/containers/reference-content/cron-schedules/) for more information.
42+
A CRON trigger is a mechanism used to automatically invoke a Serverless Function at a specific time on a recurring schedule.
43+
44+
It works similarly to a traditional Linux [cron job](https://en.wikipedia.org/wiki/Cron), using the `* * * * *` format, and uses the **UTC** time zone. Refer to our [cron schedules reference](/serverless/containers/reference-content/cron-schedules/) for more information.
45+
46+
## Custom domain
47+
48+
By default a generated endpoint is assigned to your Serverless ressource and custom domains allows you to use your own domain read [custom domain documentation](/serverless/containers/how-to/add-a-custom-domain-to-a-container).
49+
50+
## Deployment
51+
52+
Some parameters requires a new deployment of the Container to take affect and it creates a Deployment. Rollout of a deployment will not cause downtime and the traffic switches smoothly to the newest revision.
53+
54+
## Endpoint
55+
56+
An endpoint is the URL generated to access your ressource, it can be customised with Custom Domains.
4357

4458
## Environment variables
4559

46-
An environment variable is a variable whose value is set outside the program, typically through functionality built into the operating system, or microservice. An environment variable is made up of a name/value pair, and any number may be created and available for reference at a point in time.
60+
Environment variables are key/value pairs injected in your container. It's useful to share informations such as configuration with your container. Some names are reserved [details about reserved names](/serverless/containers/reference-content/containers-limitations/#configuration-restrictions).
4761

4862
## Ephemeral storage
4963

50-
In addition to vCPU and RAM, Serverless Containers also provide a storage volume for the duration of the task. This storage space allows to hold the data retrieved by the job, and disappears once the execution is complete. The maximum size of the ephemeral storage is tied to the allocated memory.
64+
In addition to vCPU and RAM, Serverless Containers also provide a storage volume for the duration of the task. This storage space allows to hold the data retrieved by the job, and disappears once the execution is complete.
65+
66+
The maximum size of the ephemeral storage is tied to the allocated memory.
5167

5268
## GB-s
5369

5470
Unit used to measure the resource consumption of a container. It reflects the amount of memory consumed over time.
5571

56-
## Image
72+
## gRPC
73+
74+
gRPC is supported on Serverless Containers, it requires to enable http2 (`h2c`) protocol.
75+
76+
## Healthcheck
77+
78+
To determine the `Status` of a Serverless Containers, default healthecks automatically checks if basic requirements are met to define the status as `ready`.
5779

58-
An image is a blueprint from which an arbitrary number of brand-new containers can be started. You can start a container from an image, perform operations in it, and save another image based on the latest state of the container.
80+
It's possible to define custom healthecks rules with a specific endpoint via the API: [read API doc](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-create-a-new-container).
81+
82+
## Instance
83+
84+
Depending incoming requests, min scale and max scale, a Serverless Container instance processes incoming requests.
5985

6086
## JWT Token
6187

62-
JWT (JSON Web Token) is an access token you can create from the console or API to enable an application to access your Private Container. Consult the [Developer documentation](https://www.scaleway.com/en/developers/api/serverless-containers/#path-tokens) for more details.
88+
JWT (JSON Web Token) is an access token you can create from the console or API to enable an application to access your Private Container. [More details about how to secure a Container](/serverless/containers/how-to/secure-a-container/#restrict-access-to-your-containers)
89+
90+
## Load balancing
91+
92+
Incoming request traffic is managed by the Serverless infrastructure. In some cases such as rapid traffic changes or load testing, depending max scale parameter the ressources are automatically allocated to manage the traffic.
93+
94+
## Max scale
95+
96+
It's the maximum number of instances of your Container. Define this parameter according to the traffic spikes of your Container. In some cases you may want to limit the max scale for cost control reasons.
97+
98+
## Min scale
99+
100+
Customizing min scale for Serverless can be useful to keep an instance warm and limit cold starts. It also have an impact on costs of your Serverless Container.
63101

64102
## mvCPU
65103

66104
A [vCPU](#vcpu) (Virtual Central Processing Unit) is equivalent to 1000 mvCPU.
67105

68106
## Namespace
69107

70-
A namespace is a project that allows you to [group your containers](/serverless/containers/how-to/create-manage-delete-containers-namespace/). Containers in the same namespace can share environment variables and access tokens, defined at the namespace level.
108+
A namespace is a project that allows you to [group your containers](/serverless/containers/how-to/create-manage-delete-containers-namespace/).
109+
110+
Containers in the same namespace can share environment variables, secrets and access tokens, defined at the namespace level.
71111

72112
## NATS trigger
73113

@@ -86,6 +126,10 @@ The value defined in the port parameter will then be passed to your container du
86126

87127
A container's privacy policy defines whether a container may be invoked anonymously (**public**) or only via an authentication mechanism provided by the [Scaleway API](https://www.scaleway.com/en/developers/api/serverless-containers/#authentication) (**private**).
88128

129+
## Registry endpoint
130+
131+
Registry endpoint parameter is the ressource link to the container image used in the Serverless Container.
132+
89133
## Sandbox
90134

91135
A sandbox is an isolation area for your container. Serverless Containers offer two sandboxing environments:
@@ -110,7 +154,11 @@ Serverless allows you to deploy your Functions (FaaS) and Containerized Applicat
110154

111155
## Serverless Framework
112156

113-
Serverless.com (Serverless Framework) is a tool that allows you to deploy serverless applications without having to manage Serverless Container’s API call. Write and deploy a YAML configuration file, everything else is handled automatically, even the image building.
157+
Serverless.com (Serverless Framework) is a tool that allows you to deploy serverless applications without having to manage Serverless Container's API call. Write and deploy a YAML configuration file, everything else is handled automatically, even the image building.
158+
159+
## Serverless Job
160+
161+
Serverless Jobs are close to Serverless Containers but it's more adapted to run long workloads, see [comparaison between Serverless products](/serverless/containers/reference-content/difference-jobs-functions-containers.mdx).
114162

115163
## SQS trigger
116164

@@ -123,6 +171,17 @@ The container can then process the message and perform any required actions, suc
123171

124172
A stateless application is a computer program that does not save client data between sessions. Data generated in one session is not saved for use in the next session with that client. All applications deployed on Serverless Containers are stateless.
125173

174+
## Status
175+
176+
A Serverless Container can be:
177+
* **Ready**: your Serverless Container is operational to serve requests.
178+
* **Pending**: your ressource is under deployment.
179+
* **Error**: something failed in the deploymen process, [open troubleshooting documentation](/serverless/containers/troubleshooting/cannot-deploy-image.mdx).
180+
181+
## Terraform
182+
183+
Terraform is an infrastructure as code tool, [read terraform documentation of Serverless Containers](https://registry.terraform.io/providers/scaleway/scaleway/latest/docs/resources/container).
184+
126185
## Timeout
127186

128187
The timeout is the maximum length of time your container can spend processing a request before being stopped. This value must be in the range 10s to 900s.
@@ -138,4 +197,4 @@ Unit used to measure the resource consumption of a container. It reflects the am
138197

139198
## Protocol
140199

141-
Serverless Containers supports **http1** (default) and **http2** (`h2c`). Use HTTP/2 if your container application is configured to listen for HTTP/2 requests, such as a gRPC service or a web server that uses HTTP/2 features like multiplexing, otherwise HTTP/1 is recommended.
200+
Serverless Containers supports **http1** (default) and **http2** (`h2c`). Use HTTP/2 if your container application is configured to listen for HTTP/2 requests, such as a **gRPC** service or a web server that uses HTTP/2 features like multiplexing, otherwise HTTP/1 is recommended.

0 commit comments

Comments
 (0)