Исходный ответ (проверьте обновление):
Когда вы выполняете
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
имеют решающее значение для изображения.