Skip to content

Using Portainer to manage your Docker containers easily

Updated 3 min read

Updated: 28 September 2026 · Applies to: Portainer Community Edition 2.45.1 LTS on Docker (Ubuntu, Debian, AlmaLinux or Rocky Linux)

Portainer is a web interface for Docker. From your browser you can start and stop containers, read their logs, open a console, manage images, volumes and networks, and deploy Docker Compose files as stacks. Portainer itself runs as one container on the same server.

Before you start

  • A VPS or dedicated server with Docker installed and running (check with docker version). Portainer 2.45.1 lists Docker Engine 28.5.1 and 29.8.1 as supported.
  • root or sudo access over SSH.
  • Docker running as root, as in a standard installation.

Install Portainer

  1. Create a volume for Portainer's data, so settings survive restarts and updates:
    docker volume create portainer_data
  2. Start Portainer:
    docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -v portainer_data:/data \
      portainer/portainer-ce:lts
  3. Allow port 9443 in your firewall (port 8000 is only needed for Portainer's Edge agents).

First login

  1. Open https://SERVER-IP:9443 in your browser. Portainer uses a self-signed certificate at first, so accept the browser warning.
  2. New installations ask for a setup token. Find it in the container log:
    docker logs portainer 2>&1 | grep setup_token
  3. Enter the token, then create the administrator user and password. Do this within 5 minutes of starting the container; after that Portainer stops for security, and you restart it with docker restart portainer.
  4. Choose Get Started to manage the local Docker environment.

Deploy an application as a stack

In Portainer, open Stacks › Add stack. Paste a Docker Compose file in the web editor, upload one, or load it from a Git repository, then click Deploy the stack.

Update Portainer

Your settings are kept in the portainer_data volume, so updating means replacing the container:

docker stop portainer
docker rm portainer
docker pull portainer/portainer-ce:lts
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v portainer_data:/data \
  portainer/portainer-ce:lts

Reset a forgotten admin password

  1. Stop Portainer: docker stop portainer
  2. Run the official helper, which prints a new random password:
    docker pull portainer/helper-reset-password
    docker run --rm -v portainer_data:/data portainer/helper-reset-password
  3. Start Portainer again with docker start portainer and log in with the new password.

If your data volume has another name, or you used a bind mount, change portainer_data in the command to match.

Older guides

Guides that use the portainer/portainer image or port 9000 describe old versions. Use the portainer/portainer-ce image and HTTPS on port 9443 as shown above.

Official documentation: Install Portainer CE with Docker on Linux.

A server with Portainer ready for you

Our Portainer VPS hosting is a KVM VPS on which our engineers install Docker and Portainer for free. For help with stacks, reverse proxies or backups, you can hire an expert from $8 per 15 minutes.

Related services

KVM VPS hosting

NVMe SSD and full root access, with Free Basic Managed Support.

Unmanaged dedicated servers

full root access and free IPMI KVM, with Free Basic Managed Support.

Linux server management

hardening, patching, monitoring and automation for Ubuntu, Debian, RHEL and AlmaLinux.

Was this answer helpful?

Still stuck? Open a ticket