🐳 Setup Portainer CE — Docker Management UI
Deploy Portainer Community Edition on Ubuntu 22.04 or 24.04 — the most popular Docker management web UI, installed in seconds with one automated script.
📦 Resources & Setup Scripts
Grab the automated bash script from GitHub to follow along with the video.
Quick Install:
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/management/portainer/portainer-ubuntu.sh
chmod +x portainer-ubuntu.sh
sudo bash portainer-ubuntu.sh
Tutorial Steps
1 Download the Script
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/management/portainer/portainer-ubuntu.sh
2 Make it Executable
chmod +x portainer-ubuntu.sh
3 Run the Installer
The script installs Docker if needed, pulls the Portainer image, and starts the container automatically.
sudo bash portainer-ubuntu.sh
4 Access the Web UI
Open your browser and navigate to:
https://<your-server-ip>:9443
Ports Used
| Port | Purpose |
|---|---|
| 9443 | HTTPS Web UI |
| 8000 | Edge agent tunnel |
Overview
Portainer CE is the world's most widely adopted container management platform. It provides a clean, browser-based graphical interface for everything Docker exposes through its CLI — containers, images, networks, volumes, and compose stacks. Portainer is itself deployed as a Docker container, so it requires no installation and can be up in under 60 seconds.
Why Use It
Portainer CE gives you full visual control over your Docker environment through a browser — no terminal required. For teams, it eliminates the need for every member to know Docker CLI commands while providing role-based access so developers, operators, and auditors each see exactly what they need. It reduces operational errors from manual commands, makes stack deployments repeatable, and provides real-time container health monitoring in one unified dashboard.
When You Need It
Who Should Use It
Real Use Cases
Main Features
How to Use After Installation
Security Best Practices
Ports and Firewall Notes
Portainer uses port 9443 for the HTTPS web UI and port 8000 for the Edge agent tunnel. Port 9443 should never be exposed directly to the public internet — place Portainer behind a reverse proxy on port 443 with a valid SSL certificate. If you are not using Edge agents to manage remote hosts, block port 8000 at the firewall entirely. For VPN-only access, restrict both ports to your VPN subnet and deny all external traffic.
Backup and Maintenance
Common Mistakes
Troubleshooting
Alternatives
Yacht is a lightweight container UI focused on simplicity with a modern design — best for home labs with basic needs. Dockge from the creator of Uptime Kuma focuses specifically on Compose stack management with a clean single-page interface. Lazydocker is a terminal-based UI for those comfortable with the terminal who want speed without learning full CLI syntax. Rancher provides Kubernetes cluster management alongside Docker workloads for enterprise environments. Direct docker CLI and docker-compose remain the most portable, version-control-friendly approach for teams that script all deployments.
When Not to Use It
Portainer CE is limited for Kubernetes management — the Business edition adds K8s features but CE support is minimal. If your entire team works with Docker CLI and treats infrastructure-as-code as the source of truth, Portainer's UI state can conflict with that workflow. For very large multi-cluster environments, Rancher or ArgoCD provide better scalability and GitOps integration. If you only run one or two containers, the overhead of managing Portainer itself may not be worth it — docker compose up -d is sufficient.
PrismaTechWork Professional Help
PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.
Frequently Asked Questions
Is Portainer CE free to use?
Yes. Portainer CE is open-source under the zlib license and free forever. The Business edition adds Kubernetes support, advanced RBAC, and commercial support, but CE covers everything needed for Docker management on one or more hosts.
Can Portainer manage multiple Docker hosts?
Yes. Connect remote Docker hosts using the Edge agent (recommended) or by exposing the Docker API over TLS. All environments appear in one dashboard. CE supports up to 5 nodes; Business edition removes the limit.
What happens if I miss the 5-minute setup timeout?
Portainer disables the setup wizard as a security measure. Stop and remove the portainer container, delete the portainer_data volume (docker volume rm portainer_data), then recreate the container. The setup wizard will appear again on first visit.
Does Portainer support Docker Swarm?
Yes. Portainer CE has full Swarm support — deploy and manage services, update replicas, view node status, and manage secrets and configs directly from the UI.
How do I update Portainer to the latest version?
Pull the latest image (docker pull portainer/portainer-ce:latest), stop and remove the current container (docker stop portainer && docker rm portainer), then recreate it with the same run command pointing to the existing portainer_data volume. Your configuration is preserved.
Can I access Portainer using a custom domain with SSL?
Yes. Use Nginx Proxy Manager to reverse proxy your domain to http://localhost:9000 (HTTP port) or https://localhost:9443. Enable WebSocket support on the proxy host or the live container console will not work.
Is Portainer safe for managing production containers?
Portainer itself is secure when properly configured — HTTPS, 2FA, VPN-only access, and user roles. The risk is that it accesses the Docker socket which grants broad host privileges. Restrict who can reach Portainer and audit user roles regularly.
Does Portainer work with Docker Compose v2?
Yes. Portainer's Stacks feature uses Docker Compose v2 under the hood. You can paste a compose file directly, reference an environment file, or pull the stack from a Git repository and deploy with one click.