У меня есть Dockerfile, которые в основном следующие:докер-Compose не найден из сценария
FROM mhart/alpine-node:5
COPY . /project
WORKDIR /project
ENTRYPOINT ["./startup.sh"]
И мой startup.sh
довольно просто тоже:
#!/bin/sh
set -e
docker-compose up -d
У меня есть docker-compose.yml
, но нет смысла описывать его здесь.
Первое, что я сделать, это построить docker image
с помощью моего Dockerfile
, так:
docker build -t test .
Затем запустите этот файл:
docker run -d test
, которая запустит startup.sh
К сожалению, у меня есть foll из-за ошибки появляются:
./startup.sh: линия 10: докер-Compose: не найден
И если я только ./startup.sh
без Docker вещи, он работает как шарм.
В каких случаях может возникнуть проблема?
Скрипт 'startup.sh' должен запускать процесс внутри контейнера, docker-compose - это всего лишь инструмент вашего хоста для управления контейнерами. –
Получил это. Спасибо за объяснение. – Mornor
Хотя не исключено, что вы хотите запустить comppos _inside_ контейнер (dind), 99% вероятно, что ответ Эрика Данненберга - вот что вы хотите здесь. – johnharris85