/entrypoint.sh: строка 8: синтаксическая ошибка: неожиданный конец файла

Проект Docker был создан на машине Linux, я запускаю windows и не могу заставить docker-compose up работать. Я прочитал ответы на Stackoverflow и пока что попробовал следующие варианты (ни один не сработал):

  • Используя Visual Studio Code, я сохранил как "LF" вместо CRLF
  • .
  • Удалил файл полностью, создал новый, используя Visual Studio Code, напечатал слова
  • Вырезал весь файл, вставил его в Блокнот, чтобы форматирование очистилось, скопировал и вставил обратно
  • Добавил различные формы #!/bin/bash в начало entrypoint.sh

На данный момент я не уверен, что еще можно попробовать. Есть идеи?

Я не знаю вашей конфигурации, но я мог бы решить эту проблему, добавив в CMD.

В моем случае я могу выполнить сценарий с помощью docker следующим образом:

Dockerfile

FROM python:3.10-alpine3.15
ENV PYTHONUNBUFFERED=1

WORKDIR /app

RUN  apk update \
  && apk add --no-cache gcc musl-dev postgresql-dev python3-dev libffi-dev \
  && pip install --upgrade pip

COPY requirements.txt .

RUN python -m pip install -r requirements.txt


COPY . .

CMD [ "sh", "entrypoint.sh" ]

entrypoint.sh

#!/bin/sh

python manage.py makemigrations
python manage.py migrate
python manage.py runserver 0.0.0.0:8000

Что ж, я чувствую себя виноватым в этом. Оказывается, решение было тем, что я уже делал, но оно не проходило, пока я не перестроился с опцией --no-cache.

Решением было:

  • Используя Visual Studio Code, я сохранил как "LF" вместо CRLF
  • .
  • и запустил docker-compose build --no-cache
Вернуться на верх