Skip to content

Deployment Overview of Portainer on Server

Prerequisites and Basic Requirements

The deployment requires a server running either a Debian-based or RHEL-based operating system. The following requirements must be met for a successful installation:

  • Operating Systems: Ubuntu, Debian, CentOS, Rocky Linux, or AlmaLinux.

  • Privileges: Root or sudo access is required to install packages and manage Docker services.

  • Network Access: Outbound internet access is required to download Docker engine, container images, and system updates.

  • Dependencies: The installation process requires curl, ca-certificates, and gnupg.

FQDN of the final panel on the hostkey.in domain

The application uses a specific domain template for its web interface based on the server ID.

Parameter Value
Prefix docker
Domain hostkey.in
Full template docker{Server_ID}.hostkey.in

Application installation process

The application is installed using a multi-stage deployment method that prepares the operating system and then deploys the containerized service.

  1. System Preparation: The system updates all existing APT or YUM packages to their latest versions. Unattended upgrade services are stopped during this phase to prevent lock conflicts.

  2. Dependency Installation:

  3. For Debian/Ubuntu: ca-certificates, curl, and gnupg are installed via the package manager, followed by Python 3 pip and necessary Docker SDK libraries (python3-pip, python3-requests, python3-docker).

  4. For RHEL-based systems: The Docker repository is added using the official GPG key. Packages such as docker-ce, docker-ce-cli, containerd.io, docker-buildx-plugin, and docker-compose-plugin are installed via YUM.

  5. Docker Configuration: A custom daemon.json configuration file is deployed to /etc/docker/ to configure the Docker engine settings.

  6. Service Activation: The Docker service is enabled to start on boot and is immediately started.

  7. Container Deployment: The Portainer container is pulled from the official registry and launched with specific volume mappings and network ports.

Access Rights and Security

  • Firewall: Ensure that port 9000 is open to allow access to the Portainer web interface.

  • Docker Socket: The application requires access to /var/run/docker.sock within the container to manage the host's Docker environment.

Docker Containers and Their Deployment

The deployment consists of one primary application container:

Container Name Image Ports Volumes Restart Policy
portainer portainer/portainer-ce 9000:9000 /var/run/docker.sock:/var/run/docker.sock always

Application Update Instructions

To update the Portainer application, perform the following steps to pull the latest image and recreate the container:

docker compose pull && docker compose up -d

If you are managing the container manually via Docker CLI, use:

docker pull portainer/portainer-ce
docker stop portainer
docker rm portainer
# Re-run the original docker run command used during installation

Location of configuration files and data

  • Docker Configuration: /etc/docker/daemon.json

  • Container Data: Managed within Docker volumes (specific paths depend on host configuration).

Available ports for connection

Port Service Protocol
9000 Portainer Web UI TCP
question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×