OS with Containers Ready application
You can install an OS with the pre-installed Containers Ready application on a dedicated server.
The Containers Ready application includes:
- Docker version 28.0.3 — a containerization platform for developing and running applications;
- plugins for running Docker Compose version 2.33.0;
- Portainer version 2.27.0 — a graphical interface for monitoring and managing Docker containers, images, and Docker networks.
Before installing the OS with an application, review the software license agreements included in the image.
Install an OS with Containers Ready
For Containers Ready to work, the dedicated server must be accessible from the internet.
To set up Containers Ready and configure Portainer when creating a server, you can specify user data — custom configuration parameters for the operating system.
Open the Portainer panel via IP address or domain. To open the Portainer panel via a domain, specify the domain in user data — after the OS is installed, a TLS(SSL) certificate from Let’s Encrypt® will be automatically issued for the domain.
Specify a domain
Not specifying a domain
-
In the control panel, in the top menu, click Products and select Dedicated Servers.
-
In the Servers section, open the server page → Operating System tab.
-
Click Reinstall OS.
-
Optional: for secure server access via an encrypted SSH protocol, select a previously uploaded and placed SSH key or add a new one. Learn more in the Create and upload an SSH key to a dedicated server.
-
Enter user data. User data lets you automate server configuration. You can specify user data only for servers without hardware HBA and RAID controllers.
You can use a script in user data to configure container setups. To open the Portainer panel via a domain, insert the following script into the user data field:
#cloud-configwrite_files:- path: "/opt/containers/docker-compose.yaml"permissions: "0644"content: |version: "3.9"services:<containers>- path: "/opt/containers/.env"permissions: "0644"content: |<environment-variables>- path: "/opt/user-values.yaml"permissions: "0644"content: |portainer_use_le: trueportainer_domain: "<example.com>"portainer_le_email: "<root@example.com>"Specify:
<containers>— the contents of the Docker Compose file for thedocker-compose.yamlfile. Learn more in the docker compose documentation in the Docker docs;<environment-variables>— environment variables for the.envfile. If the file is not needed, delete the code block. Learn more in the Use environment variables section of the Docker documentation;- in the
content:code block for the/opt/user-values.yamlfile, specify the configuration parameters for Portainer; portainer_use_le: true— a parameter for automatic TLS(SSL) certificate issuance from Let’s Encrypt®;<example.com>— the domain for accessing Portainer. To make the domain accessible via the server's public IP address, add an A record in your DNS hosting control panel and specify the server's public IP address as the record value. You can copy the IP address in the control panel: in the top menu, click Products → Dedicated Servers → server page → Operating System tab → in the IP field, click . If the domain is delegated to Servercore DNS Hosting (actual), use the Add a resource record guide. After OS installation, a TLS(SSL) certificate from Let’s Encrypt® is automatically issued for the domain. If the TLS(SSL) certificate issuance fails, the Portainer panel will be available via the server's IP address;<root@example.com>— the Containers Ready administrator email for account creation and Let’s Encrypt® notifications.
Example script for User data
#cloud-configwrite_files:- path: "/opt/containers/docker-compose.yaml"permissions: "0644"content: |version: "3.9"services:web:container_name: webimage: "busybox"env_file: "/opt/containers/.env"db:container_name: dbimage: "busybox"env_file: "/opt/containers/.env"- path: "/opt/containers/.env"permissions: "0644"content: |APP_ENV=productionLOG_LEVEL=infoLOG_FORMAT=jsonLOG_OUTPUT=/var/log/app.log- path: "/opt/user-values.yaml"permissions: "0644"content: |portainer_use_le: trueportainer_domain: "example.com"portainer_le_email: "root@example.com" -
In the Distribution field, select Container Ready.
-
Optional: partition the disks. You can select the disk on which the root partition
/will be created and the OS installed. If the server has four or more disks, you can pair them into different RAID levels, for example, RAID1 and RAID0.By default, the optimal RAID level is determined and only disks with partitions and disks in RAID are partitioned. If you leave the default partitioning, the OS will be installed on the first disk, according to the order of disk installation on the server — NVMe → SSD → HDD.
-
Click Install. Installation may take from 7 to 60 minutes; its duration depends on the server performance and the selected distribution. If more time has passed, create a ticket.
-
After the OS is installed, a password for server access will be generated, which is also used for authorizing in the Portainer panel. The password can be copied in the control panel: in the top menu, click Products → Dedicated Servers → server page → Operating System tab → in the Password field, click . The password is available for viewing for 24 hours from the moment OS installation starts or configuration is changed. If you forgot the server password, you can reset and recover it.
Connect to the Portainer panel
The address for connecting to the Portainer panel depends on whether you specified a domain in user data when installing the OS in step 5.
Domain is specified
Domain is not specified
-
Open the following page in your browser:
https://<domain>:9443Specify
<domain>— the domain name you entered when installing the OS at step 5 in the User data. -
Log in to the panel. Use:
- login —
admin; - password — your server password. You can copy it in the control panel: in the top menu, click Products → Dedicated Servers → server page → Operating System tab → in the Password field, click . The password is available for viewing for 24 hours from the moment OS installation starts or configuration is changed. If you forgot the server password, you can reset and recover it.
- login —