Я настраиваю приложение Heroku, которое на данный момент имеет статус c JS / HTML, обслуживаемый с nginx (позже будет сложнее).
Я пытаюсь развернуть с Docker и это мой Dockerfile:
#Grab the latest alpine image
FROM alpine:latest
RUN apk update
RUN apk add nginx bash wget
RUN wget https://github.com/jwilder/dockerize/releases/download/v0.6.1/dockerize-alpine-linux-amd64-v0.6.1.tar.gz
RUN tar -C /usr/local/bin -xvzf dockerize-alpine-linux-amd64-v0.6.1.tar.gz
# Add our code
ADD ./build /www
COPY docker/nginx.conf.tmpl /etc/nginx/
RUN mkdir -p /run/nginx
# Run the image as a non-root user
RUN adduser -D -g 'www' www
# Will be replaced by dockerize
RUN rm /etc/nginx/nginx.conf
RUN chown -R www:www /var/lib/nginx
RUN chown -R www:www /www
CMD dockerize -template /etc/nginx/nginx.conf.tmpl:/etc/nginx/nginx.conf && cat /etc/nginx/nginx.conf
Проверяя журналы, я получаю правильный вывод из команды в конце CMD: cat /etc/nginx/nginx.conf
. Но когда я делаю heroku run cat /etc/nginx/nginx.conf
, он выводит стандартный nginx.conf
, который поставляется с nginx
, а не тот, который генерируется dockerize
, и, разумеется, запуск nginx
не работает.