首页 > 解决方案 > Portainer Stack - docker compose 问题与 MacVLan 网络

问题描述

我开始使用 portrainer.io 来管理我的 docker 映像,而不是 Synology DSM Docker GUI。

背景信息:我已经使用 MacVLAN 为我的 Pihole Docker 创建了一个自己的 IP 地址,总体而言,关于这个 piHole 的一切都运行良好,由 DSM GUI 制作。 环境 网络 端口

问题:我现在想使用 portrainer.io 来管理我的 Docker 安装。包括应该是 docker compose 的 Stack 选项。

我现在正在努力使用这个 Docker 脚本来获取我的 PiHole Image:

services:
  pihole:
  container_name: pihole
 image: pihole/pihole:latest
    networks: docker
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "67:67/udp"
      - "80:80/tcp"
    environment:
      TZ: 'Europe/Berlin'
      WEBPASSWORD: 'password'
      ServerIP: "0.0.0.0"
    # Volumes store your data between container upgrades
    volumes:
     - '/pihole/pihole/:/etc/pihole/'
     - '/pihole/dnsmasq/:/etc/dnsmasq.d/'
    # Recommended but not required (DHCP needs NET_ADMIN)
    #   https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
    cap_add:
      - NET_ADMIN
    restart: unless-stopped

有谁知道为什么我会收到“无法部署堆栈”作为错误消息?

标签: dockerdocker-composeportainer

解决方案


您正在告诉服务使用名为“docker”的网络,但该网络未在撰写文件中定义。这是完整的 docker-compose 文件吗?

如果是,那么您缺少网络部分:

networks:
  docker:
    external: true

推荐阅读