Home > Software > How to Set Up Docker Management with Portainer and Docker Compose

How to Set Up Docker Management with Portainer and Docker Compose

Anastasios Antoniadis

Learn to streamline Docker management using Portainer and Docker Compose with our detailed guide. Simplify container orchestration, ensuring efficient deployment, monitoring, and maintenance of Docker environments.

Docker (1)

Managing Docker environments, especially at scale or in complex setups, can quickly become challenging. Portainer, an open-source lightweight management UI, offers a comprehensive solution for managing your Docker containers, images, networks, and volumes through a user-friendly dashboard. By deploying Portainer with Docker Compose, you can automate and simplify the setup process, making Docker management more accessible and efficient. This guide will walk you through the steps to deploy Portainer using Docker Compose, enabling you to take full control of your Docker environment easily.


Before you start, ensure you have the following:

  • Docker installed on your system.
  • Docker Compose installed on your system.
  • Basic Docker concepts and the YAML syntax used in Docker Compose files.

Step 1: Create a Docker Compose File

First, create a directory dedicated to your Portainer setup. This directory will contain your Docker Compose file (docker-compose.yml) and any additional configuration files or directories you may need.

mkdir portainer-docker && cd portainer-docker

Create the docker-compose.yml file:

touch docker-compose.yml

Open this file in a text editor and insert the following configuration:

version: '3.8'
    image: portainer/portainer-ce:latest
    container_name: portainer
    restart: always
      - "9000:9000"
      - "8000:8000"
      - "/var/run/docker.sock:/var/run/docker.sock"
      - "portainer_data:/data"

Configuration Explained:

  • image: Specifies the Docker image to use. portainer/portainer-ce:latest pulls the latest version of Portainer Community Edition.
  • container_name: Sets a custom name for your container for easier reference.
  • restart: Ensures the Portainer container restarts automatically unless explicitly stopped, for better reliability.
  • ports: Exposes ports 9000 and 8000 on the host. Port 9000 is used to access the Portainer web UI, while port 8000 is used for Portainer’s Edge Agent feature.
  • volumes:
    • The first volume mounts the Docker socket, allowing Portainer to communicate with the Docker daemon and manage the containers.
    • The second volume persists Portainer’s data to ensure your configurations are retained across container restarts.

Step 2: Launch Portainer

With your docker-compose.yml file ready, start Portainer by running:

docker compose up -d

This command will download the necessary Docker image and start the Portainer container in detached mode.

Step 3: Access Portainer

Once the container is up and running, you can access the Portainer web UI by navigating to http://localhost:9000 in your web browser. The first time you access Portainer, you’ll be prompted to create an admin user and password. After setting up your credentials, you can connect Portainer to your local Docker environment or manage remote environments.


Deploying Portainer with Docker Compose offers a seamless and efficient method for managing your Docker environment. Following the steps outlined in this guide, you can quickly set up Portainer, providing you with a powerful, user-friendly interface for container management. Whether you’re a developer, system administrator, or DevOps professional, Portainer and Docker Compose streamline Docker management tasks, allowing you to focus more on development and less on administrative overhead.

Anastasios Antoniadis
Follow me
0 0 votes
Article Rating
Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x