使用与撰写文件相同的参数启动docker

使用与撰写文件相同的参数启动docker

我是 docker 新手,想在我的 AlmaLinux 9 上启动一个容器,但不想深入学习 compose/docker... 只是尝试一下基础知识。我使用的容器的 compose 文件是来源这里

version: '3.8'
services:
  zigbee2mqtt:
    container_name: zigbee2mqtt
    restart: unless-stopped
    image: koenkk/zigbee2mqtt
    volumes:
      - ./zigbee2mqtt-data:/app/data
      - /run/udev:/run/udev:ro
    ports:
      - 8080:8080
    environment:
      - TZ=Europe/Berlin
    devices:
      - /dev/ttyUSB0:/dev/ttyUSB0

因此,您创建了一个 bash 脚本(略有改动),我认为它是等效的:

docker run -d --init \
   --restart=unless-stopped \
   -p 8090:8090 \
   -e TZ='America/Toronto' \
   -v /data/zigbee2mqtt/data:/app/data \
   --device /dev/ttyZigbee \
   --name zigbee2mqtt
   koenkk/zigbee2mqtt

启动脚本时,它要求我为 keonkk/zigbeemqtt 映像选择一个源存储库,但 3 个选项中只有一个有效。如何在命令行中指定存储库?我尝试命名映像,但没有成功:docker.io/koenkk/zigbee2mqtt

答案1

看来 koenkk/zigbee2mqtt 的官方图像已从 docker hub 中删除。

然而,在应用程序的 Github 存储库你可以找到一个 Dockerfile。你可以尝试将该 Dockerfile 复制到 docker-compose.yml 所在的目录并执行

docker build . -t koenkk/zigbee2mqtt

您还可以添加行

build: .

到 docker-compose.yml(前提是 Dockerfile 与 docker-compse.yml 文件位于同一目录中)

相关内容