[英]docker-compose exited with code 0 - convert docker run command to docker-compose up?
我正在尝试在 docker-compose 中添加 DBpedia 聚光灯 API 服务。 ( https://github.com/dbpedia-spotlight/spotlight-docker )
通常,此命令可以正常工作:
docker run -i -p 2222:80 dbpedia/spotlight-english spotlight.sh
我在 docker-compose.yml 的尝试:
version: '3'
services:
dbpedia:
image: "dbpedia/spotlight-english:latest"
ports:
- "2222:2222"
运行docker-compose up
时出现以下错误:
Recreating composetest_dbpedia_1 ... done
Attaching to composetest_dbpedia_1
composetest_dbpedia_1 exited with code 0
我错过了什么? 我正在尝试像以前一样启动 DBpedia 服务,但作为 docker-compose 文件的一部分
原始答案(检查更新):
当你执行
docker run -i -p 2222:80 dbpedia/spotlight-english spotlight.sh
您正在明确覆盖图像的默认入口点。
要使用 docker-compose 实现相同的行为,请尝试使用以下 compose 文件:
version: '3'
services:
dbpedia:
image: "dbpedia/spotlight-english:latest"
ports:
- "2222:80"
entrypoint: spotlight.sh
您对我已更正的端口映射有误。
更新:正如@David Maze 在评论中正确说明的那样,使用您的docker run
命令,您将覆盖图像的CMD
指令,因此等效的 docker-compose 条目是command: spotlight.sh
。 显然,对于您的图像没有区别,但在某些情况下CMD
和ENTRYPOINT
操作对图像至关重要。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.