Docker Image Support Spec
This chapter will take you to know Kato’s support specifications for creating components based on Docker images.
Mirror Support Specification
Kato is the fastest and most compatible way to make image creation components based on existing standards. Here we will describe what images can run on Kato from the following aspects:
Cannot Run Mirror
Here we first explain which images cannot run, this is very important.
Basic System Environment
The basic system mirrors represented by
debian are necessary for us to make component images, but they cannot be run directly on Kato. Why? Because their startup process is not running in the foreground by default, that is, the container will exit when it starts. You can only open stdin for TTL interactive operation when running locally.
Basic Language & Tools
At present, more developers use Docker mirroring to distribute command-line tools, such as golang compilation environment, docker compilation environment, maven compilation environment, and so on. The reason why they cannot operate is the same as the first category.
In addition to the image types described above, we recommend creating the following types of components based on images:
Mysql Mongo Redis Tomcat nginx and other frequently used mid-price components.
minio object storage component, etc.
Other Component Mirrors that Provide TCP or UDP Protocol Components
Mirror Detection Specification
The image can be normally obtained by the Kato cluster server
- The provided mirror name is accurate and exists in the corresponding mirror repository
- For private repository mirroring, please provide account password
- For self-built repository, please configure HTTPs or configure Docker trust for Kato cluster nodes
Kato will obtain the following attribute information from the mirror
- Port, the Expose port information configured in the dockerfile will be obtained.
- Environment variables. Environment variables are the recommended custom configuration method under cloud native, and are also recommended users of Docker image custom configuration.
- Storage mount, the volume information configured in dockerfile will be obtained
The components created by Docker compose are only obtained from the compose configuration, and the docker run creation is obtained from the creation commands and images.
Setting of component memory allocation
The components created by mirroring use 512M memory allocation by default. If the components created by dockerrun or docker compose show that the memory parameters are set, the settings will prevail.
Setting of component deployment type
The component created by the image is set to
Stateless deployment type by default. After version 5.1.3, when the image name is the following value, the default setting is
Stateful deployment type:
For example, the following image will be deployed as a stateful type: