docker сборка файлов, копирование файлов в квадратных скобках - PullRequest
1 голос
/ 30 апреля 2020

Я давно использовал файл сборки docker для создания моего следующего приложения js, но сегодня я добавил следующие js dynamici c страницы. Эти страницы названы в квадратных скобках, например [page]. js

Если я удаляю этот файл, мой docker файл строится нормально, так что это определенно связано с квадратными скобками, но я не знаю как решить эту проблему.

Вот мой Docker файл:

FROM node:10.13-alpine
RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app
WORKDIR /home/node/app
COPY package*.json ./
USER node
RUN npm install
COPY --chown=node:node . .
EXPOSE 3000
RUN npm run build
CMD ["npm", "start"]

и вот ошибка

Error: Could not find a valid build in the '/home/node/app/.next' directory!

И как я скажем, это началось, так как я добавил квадратные скобки в имени файла. К сожалению, для правильного функционирования эти файлы должны быть названы в квадратных скобках

1 Ответ

1 голос
/ 30 апреля 2020

Согласно документации COPY ,

При копировании файлов или каталогов, содержащих специальные символы (например, [и]), вам необходимо экранировать эти пути после Golang правила, чтобы они не рассматривались как соответствующие шаблоны. Например, чтобы добавить файл с именем arr [0] .txt, используйте следующее:

ADD arr[[]0].txt /mydir/

Единственное решение, которое мне удалось найти, - это скопировать файлы со специальными символами один одним экранированием специальных символов.

...