Мне нужно написать в одном и том же dockerfile сервис и BBDD, и я использую образ с alpine и postgresql. Мой докер-файл выглядит так:
FROM postgres:11.2-alpine
ENV DEBIAN_FRONTEND=noninteractive
RUN apk update && \
apk add --virtual build-deps gcc python-dev musl-dev && \
apk add netcat-openbsd
RUN apk update && \
apk add py-pip
RUN echo $(ls)
RUN echo $(find . -type d -name "postgresql")
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
#ADD /db/create.sql /docker-entrypoint-initdb.d
#RUN su - postgres
RUN /etc/init.d/postgresql start &&\
psql -f /db/create.sql
COPY ./requirements.txt /usr/src/app/requirements.txt
RUN pip install -r requirements.txt
COPY . /usr/src/app
RUN chmod 777 manage.py
EXPOSE 5000
EXPOSE 5432
CMD python manage.py runserver --host 0.0.0.0
Проблема в том, что если я напишу "ADD * .sql /docker-entrypoint-initdb.d", файл sql не будет выполнен.
Я попытался выполнить другим способом, выполнив RUN /etc/init.d/postgresql start && \ psql -f /db/create.sql, но это не работает, потому что инициализация postgresql отсутствует.
Заранее спасибо.