【发布时间】: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'
另外我应该提一下,这个脚本可以在其他计算机上运行,只是我的有问题
【问题讨论】:
-
你能分享任何相关的
Dockerfile或docker-compose.yml吗?没有您的设置,很难说出任何事情。 -
我添加了精度
-
service-hardware-image等的图片是什么?目前还无法诊断。 -
这些是来自项目的图像,但在我的电脑上有:
docker images --format="{{.Repository}} {{.Tag}} {{.ID}}" | grep "hardware" | cut -d' ' -f2return "1.0.0" 我检查了,它们的名称和标记正确它们是 dotnet 项目,但我不确定它们在这里是相关的。
标签: bash docker docker-compose