🐳 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.

⚠️ This script is provided for demo and testing purposes only. Not intended for production use.

📦 Resources & Setup Scripts

Grab the automated bash script from GitHub to follow along with the video.

Automated install script — one command sets everything up.
View on GitHub

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
⏰ You have 5 minutes after first start to create your admin account before Portainer locks the setup wizard!

Ports Used

PortPurpose
9443HTTPS Web UI
8000Edge 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.

                      Contact Us

                      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.