#node.js #reactjs #docker
#node.js #reactjs #docker
Вопрос:
Итак, у меня есть эти переменные env, определяющие файлы SSL, и я хочу скопировать их в свой контейнер, почему-то они не копируются по умолчанию, даже если они находятся в папке моего проекта.
Вы указали SSL_CRT_FILE в своем env, но файл «/usr/src/app/server.cert» не может быть найден
Dockerfile
FROM node:10
MAINTAINER Kuba Wasilewski <jakub.wasilewski@sprint.pl>
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
ARG REACT_APP_API_URL
ENV REACT_APP_API_URL ${REACT_APP_API_URL}
COPY . .
ENV HTTPS=true
# these are the files that are not copied by default
ENV SSL_CRT_FILE=server.cert
ENV SSL_KEY_FILE=server.key
EXPOSE 3000
CMD [ "npm", "start" ]
Комментарии:
1. Как копировать файлы? с
COPY
помощью, вы создали сертификаты?2. server.cert и server.key существуют в вашем проекте?
3. Да на оба вопроса.
Ответ №1:
Поскольку вы указали рабочий каталог как /usr/src/app
, команды КОПИРОВАНИЯ должны копировать любые файлы проекта в это местоположение.
FROM node:10
MAINTAINER Kuba Wasilewski <jakub.wasilewski@sprint.pl>
WORKDIR /usr/src/app
COPY package*.json /usr/src/app
RUN npm install
ARG REACT_APP_API_URL
ENV REACT_APP_API_URL ${REACT_APP_API_URL}
COPY . /usr/src/app
ENV HTTPS=true
# these are the files that are not copied by default
ENV SSL_CRT_FILE=server.cert
ENV SSL_KEY_FILE=server.key
EXPOSE 3000
CMD [ "npm", "start" ]