The Docker extension turns a Plesk server into a simple container host. You can launch images such as Redis, Uptime Kuma or a Node.js app, keep their data in volumes and publish them through a normal Plesk domain with a Let's Encrypt certificate. This guide is for Plesk administrators on a VPS or dedicated server.
Before you start
- Administrator access to Plesk on a Linux VPS or dedicated server. Docker is not available on shared Plesk hosting.
- A supported OS (current AlmaLinux, Rocky Linux, Ubuntu or Debian) and enough RAM for your containers.
- A domain or subdomain in Plesk if you want to publish the container on the web.
Install the Docker extension
- Go to Extensions → Extensions Catalog.
- Search for Docker and click Get It Free.
- Plesk installs the Docker engine and the extension. Open it from Docker in the left menu.
Run a container
- In Docker → Images, search Docker Hub for an image, for example
louislam/uptime-kuma. - Pick a tag (prefer a specific version over
latest) and click Run. - In the container settings:
- Untick Automatic port mapping and set Manual mapping, binding the container port (for example
3001) to a local host port such as127.0.0.1:3001. Binding to localhost keeps it off the public internet. - Under Volume mapping, map a host folder such as
/var/docker/uptimeto the container's data path (/app/data) so data survives updates. - Add Environment variables the image needs.
- Tick Automatic start after system reboot.
- Untick Automatic port mapping and set Manual mapping, binding the container port (for example
- Click Run. The container appears under Docker → Containers.
Publish the container on a domain
- Create a domain or subdomain such as
status.example.comin Websites & Domains. - Under the domain, click Docker Proxy Rules and then Add Rule.
- Set URL to
/, choose the container and its port, and click OK. Plesk configures Nginx to forward requests. - Issue a certificate with SSL It! and enable the HTTPS redirect.
Manage containers
- Logs: open the container and click Log to see its output.
- Restart, stop, recreate: use the buttons on the container page. Recreate keeps settings but starts a fresh container – data survives only in mapped volumes.
- Update an image: pull the newer tag, then recreate the container using it.
- Docker Compose: recent versions of the extension let you upload a
docker-compose.ymlunder Docker → Stacks.
Security notes
- Do not publish database ports such as 3306 or 6379 to the internet.
- Docker can bypass firewall rules for published ports; binding to
127.0.0.1avoids surprises. - Only use trusted images and keep them updated.
Troubleshooting
- 502 Bad Gateway on the domain: the container is stopped or the proxy rule points to the wrong port. Check Containers and the log.
- Container exits immediately: a required environment variable is missing. See why Docker containers exit immediately.
- Disk filling up: remove unused images and stopped containers, or see free disk space with docker prune.
