### 1. Set up Docker Network ```shell docker network create proxynet ``` ### 2. Setup Docker Path * `/docker`: Docker Relevant Data * `/docker/portainer`: Portainer Data * `/mnt/data/docker`: Docker Container Application Data ```shell mkdir -p mnt/data/docker mkdir -p /docker/portainer touch /docker/portainer/docker-compose.yml ``` ### 3.1 Portainer Docker Compose (using Path Bindings) ```shell cd /docker/portainer nano docker-compose.yml ``` **Insert the Following Content:** ```yaml version: "3.8" name: "portainer" services: portainer: image: portainer/portainer-ce container_name: portainer restart: always ports: - 9000:9000 # HTTP Port volumes: - /var/run/docker.sock:/var/run/docker.sock - /mnt/data/docker/portainer/portainer/data:/data networks: default: external: true name: proxynet ``` ```shell docker compose up -d ``` ### 3.2 (Alternative) Portainer Docker Compose (using Docker Volumes) ```shell cd /docker/portainer nano docker-compose.yml ``` **Insert the Following Content:** ```yaml version: "3.8" name: "portainer" services: portainer: image: portainer/portainer-ce:latest container_name: portainer restart: always ports: - 9000:9000 # Web UI Port volumes: - /var/run/docker.sock:/var/run/docker.sock - portainer_data:/data networks: default: external: true name: proxynet volumes: portainer_data: ``` ```shell docker compose up -d ``` ### 4. Portainer Setup * go to `http://<server-ip>:9000` * Create Admin Account * Any Username * Password min 12 characters * Have Fun
