【问题标题】:Docker compose why do i get "ERROR : page not found"?Docker compose 为什么我会收到“错误:找不到页面”?
【发布时间】:2021-06-10 08:40:53
【问题描述】:

运行 docker compose up 时出现错误,我得到了这个: ERROR: page not found

如果我以详细的方式运行,我会得到这个:最后

urllib3.connectionpool._make_request: http://localhost:None "GET /v1.30/images/service-statistics-image:1.0.0%0A0/json HTTP/1.1" 404 29
ERROR: compose.cli.errors.log_api_error: page not found

我在网上搜索了一个解决方案,但似乎没有人得到这个错误。 此外,我在 docker compose 中使用的所有图像都应该在我的计算机上,所以它不需要拉任何东西

请帮忙。

以下是一些精度: 我从这个脚本运行 docker compose:

#!/bin/bash

/app/scripts/stop-services.sh

cd /app

hardwareVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "hardware" | cut -d' ' -f2)
paymentVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "payment" | cut -d' ' -f2)
hotfolderVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "hotfolder" | cut -d' ' -f2)
statisticsVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "statistics" | cut -d' ' -f2)
infosVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "infos" | cut -d' ' -f2)
receiptVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "receipt" | cut -d' ' -f2)
uiVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "service-ui" | cut -d' ' -f2)
telemetryVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "telemetry" | cut -d' ' -f2)

export hardwareVersion
export paymentVersion
export hotfolderVersion
export statisticsVersion
export infosVersion
export receiptVersion
export uiVersion
export telemetryVersion

echo "Running docker-compose"
/usr/local/bin/docker-compose up &

所有内部命令(docker 图像)单独工作

这是 /app 中的 docker-compose.yml :

version: '3.3'
services:
  hardware:
    privileged: true
    image: service-hardware-image:$hardwareVersion
    container_name: hardware
    ports:
      - 6001:6000
    networks:
      - my-network
    volumes:
      - data:/data

  hotfolder:
    image: service-hotfolder-image:$hotfolderVersion
    container_name: hotfolder
    ports:
      - 6003:6000
    networks:
      - my-network
    volumes:
      - data:/data

  statistics:
    image: service-statistics-image:$statisticsVersion
    container_name: statistics
    ports:
      - 6004:6000
    networks:
      - my-network
    volumes:
      - data:/data

  receipt:
    privileged: true
    image: service-receipt-image:$receiptVersion
    container_name: receipt
    ports:
      - 6005:6000
    networks:
      - my-network
    volumes:
      - data:/data

  payment:
    privileged: true
    image: service-payment-image:$paymentVersion
    container_name: payment
    ports:
      - 6002:6000
    networks:
      - my-network
    volumes:
      - data:/data

  telemetry:
    privileged: true
    image: service-telemetry-image:$telemetryVersion
    container_name: telemetry
    ports:
      - 6006:6000
    networks:
      - my-network
    volumes:
      - data:/data

  ui:
    image: service-ui-image:$uiVersion
    container_name: ui
    environment:
      - SystemSettings__IsSimulator=false
    ports:
      - 80:80
    networks:
      - my-network
    volumes:
      - data:/data
      - wwwrootimages:/app/wwwroot/images

networks:
    my-network:
      external:
        name: my-network

volumes:
  data:
    driver: local
    driver_opts:
      type: 'none'
      o: 'bind'
      device: '/data'
  wwwrootimages:
    driver: local
    driver_opts:
      type: 'none'
      o: 'bind'
      device: '/data/configuration/services/ui/images'

另外我应该提一下,这个脚本可以在其他计算机上运行,​​只是我的有问题

【问题讨论】:

  • 你能分享任何相关的Dockerfiledocker-compose.yml吗?没有您的设置,很难说出任何事情。
  • 我添加了精度
  • service-hardware-image 等的图片是什么?目前还无法诊断。
  • 这些是来自项目的图像,但在我的电脑上有:docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "hardware" | cut -d' ' -f2 return "1.0.0" 我检查了,它们的名称和标记正确它们是 dotnet 项目,但我不确定它们在这里是相关的。

标签: bash docker docker-compose


【解决方案1】:

确保你的命令

statisticsVersion=$(docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "statistics" | cut -d' ' -f2)

不返回换行特殊字符。 在 url /v1.30/images/service-statistics-image:1.0.0%0A0/json 中将此换行符编码为 %0A 是没有意义的

【讨论】:

  • 确实,我有另一个名为“statistics”的图像并标记为:0 我还有其他错误,但至少我正在前进,谢谢。
猜你喜欢
  • 1970-01-01
  • 2021-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-24
  • 1970-01-01
  • 2021-09-26
  • 1970-01-01
相关资源
最近更新 更多