docker.recipes

Portainer Business Edition

intermediate

Advanced Docker and Kubernetes management with RBAC and GitOps.

Overview

Portainer Business Edition transforms container management with enterprise-grade features for Docker, Kubernetes, and container orchestration platforms. Originally developed as an open-source Docker management tool, Portainer has evolved into a comprehensive container platform that bridges the gap between simple container operations and complex enterprise orchestration needs. The Business Edition adds critical enterprise features like role-based access control (RBAC), GitOps workflows, advanced registry management, and multi-environment governance that make it suitable for production deployments at scale. This stack combines Portainer Business Edition with the Portainer Agent to create a distributed management architecture where the main Portainer instance provides the web interface and management capabilities while agents deployed across multiple Docker hosts enable centralized control of distributed container infrastructure. The agent component allows Portainer to manage remote Docker environments securely, collecting real-time metrics and enabling operations across multiple hosts from a single management interface. Organizations choose this combination when they need enterprise-grade container management that goes beyond basic Docker operations to include team collaboration, compliance controls, and automated deployment workflows. The Business Edition's advanced features like custom templates, edge computing management, and integrated authentication make it particularly valuable for teams that have outgrown simple container management tools but need something more accessible than complex orchestration platforms like OpenShift or Rancher.

Key Features

  • Enterprise RBAC with team-based access controls and custom role definitions
  • GitOps integration for automated stack deployments from Git repositories
  • Advanced registry management with vulnerability scanning and image lifecycle policies
  • Multi-environment management across Docker, Kubernetes, and Azure Container Instances
  • Edge computing support with offline-capable agents for remote deployments
  • Custom application templates marketplace with organizational template sharing
  • Authentication integration with LDAP, OAuth, and SAML providers
  • Audit logging and compliance reporting for container operations

Common Use Cases

  • 1Enterprise teams managing multi-tenant container infrastructure with strict access controls
  • 2DevOps teams implementing GitOps workflows for automated application deployments
  • 3Organizations running hybrid Docker and Kubernetes environments from single interface
  • 4Remote edge computing deployments requiring centralized management of distributed agents
  • 5Development teams needing self-service container deployment with governance guardrails
  • 6MSPs managing container infrastructure across multiple client environments
  • 7Regulated industries requiring audit trails and compliance controls for container operations

Prerequisites

  • Docker Engine 17.06 or later with API version 1.30+
  • Minimum 512MB RAM for Portainer BE (1GB+ recommended for production)
  • Available ports 8000, 9001, and 9443 on the host system
  • Valid Portainer Business Edition license key for enterprise features
  • Network connectivity between Portainer server and agent on port 9001
  • Understanding of Docker concepts and basic container orchestration principles

For development & testing. Review security settings, change default credentials, and test thoroughly before production use. See Terms

docker-compose.yml

docker-compose.yml
1services:
2 portainer:
3 image: portainer/portainer-ee:latest
4 container_name: portainer
5 command: -H unix:///var/run/docker.sock
6 environment:
7 - VIRTUAL_HOST=${PORTAINER_HOST}
8 volumes:
9 - /var/run/docker.sock:/var/run/docker.sock
10 - portainer-data:/data
11 ports:
12 - "8000:8000"
13 - "9443:9443"
14 networks:
15 - portainer-network
16 restart: unless-stopped
17
18 agent:
19 image: portainer/agent:latest
20 container_name: portainer-agent
21 volumes:
22 - /var/run/docker.sock:/var/run/docker.sock
23 - /var/lib/docker/volumes:/var/lib/docker/volumes
24 ports:
25 - "9001:9001"
26 networks:
27 - portainer-network
28 restart: unless-stopped
29
30volumes:
31 portainer-data:
32
33networks:
34 portainer-network:
35 driver: bridge

.env Template

.env
1# Portainer Business
2PORTAINER_HOST=portainer.localhost
3
4# Business Edition requires license
5# Get trial at: https://www.portainer.io/

Usage Notes

  1. 1Web UI at https://localhost:9443
  2. 2Set admin password on first visit
  3. 3Business edition requires license
  4. 4RBAC, GitOps, registries
  5. 5Kubernetes support included

Individual Services(2 services)

Copy individual services to mix and match with your existing compose files.

portainer
portainer:
  image: portainer/portainer-ee:latest
  container_name: portainer
  command: "-H unix:///var/run/docker.sock"
  environment:
    - VIRTUAL_HOST=${PORTAINER_HOST}
  volumes:
    - /var/run/docker.sock:/var/run/docker.sock
    - portainer-data:/data
  ports:
    - "8000:8000"
    - "9443:9443"
  networks:
    - portainer-network
  restart: unless-stopped
agent
agent:
  image: portainer/agent:latest
  container_name: portainer-agent
  volumes:
    - /var/run/docker.sock:/var/run/docker.sock
    - /var/lib/docker/volumes:/var/lib/docker/volumes
  ports:
    - "9001:9001"
  networks:
    - portainer-network
  restart: unless-stopped

Quick Start

terminal
1# 1. Create the compose file
2cat > docker-compose.yml << 'EOF'
3services:
4 portainer:
5 image: portainer/portainer-ee:latest
6 container_name: portainer
7 command: -H unix:///var/run/docker.sock
8 environment:
9 - VIRTUAL_HOST=${PORTAINER_HOST}
10 volumes:
11 - /var/run/docker.sock:/var/run/docker.sock
12 - portainer-data:/data
13 ports:
14 - "8000:8000"
15 - "9443:9443"
16 networks:
17 - portainer-network
18 restart: unless-stopped
19
20 agent:
21 image: portainer/agent:latest
22 container_name: portainer-agent
23 volumes:
24 - /var/run/docker.sock:/var/run/docker.sock
25 - /var/lib/docker/volumes:/var/lib/docker/volumes
26 ports:
27 - "9001:9001"
28 networks:
29 - portainer-network
30 restart: unless-stopped
31
32volumes:
33 portainer-data:
34
35networks:
36 portainer-network:
37 driver: bridge
38EOF
39
40# 2. Create the .env file
41cat > .env << 'EOF'
42# Portainer Business
43PORTAINER_HOST=portainer.localhost
44
45# Business Edition requires license
46# Get trial at: https://www.portainer.io/
47EOF
48
49# 3. Start the services
50docker compose up -d
51
52# 4. View logs
53docker compose logs -f

One-Liner

Run this command to download and set up the recipe in one step:

terminal
1curl -fsSL https://docker.recipes/api/recipes/portainer-business/run | bash

Troubleshooting

  • License validation failed: Ensure your Portainer BE license is valid and not expired in the license management section
  • Agent connection timeout: Verify port 9001 is accessible and not blocked by firewall between Portainer and agent
  • GitOps repository sync failing: Check that the Git repository URL is accessible and authentication credentials are correct
  • RBAC permissions not applying: Verify user team assignments and role mappings in the user management interface
  • Template deployment failed: Ensure the custom template variables are properly defined and Docker socket permissions allow image pulls
  • Edge agent offline status: Check network connectivity and verify the edge key hasn't expired in the edge computing section

Community Notes

Loading...
Loading notes...

Download Recipe Kit

Get all files in a ready-to-deploy package

Includes docker-compose.yml, .env template, README, and license

Ad Space