Lupsik Pupsik
networks:
default:
external:
name: bridge
пищет что надо только user-defined
Köfte
docker network create mynet
Lupsik Pupsik
Lupsik Pupsik
он не может сам создать если ее нет?
Köfte
поднимай компос с ключом -p myproject
Lupsik Pupsik
Lupsik Pupsik
короче я сделал через external, но получается ее надо создавать
Köfte
нет
Lupsik Pupsik
ну еще можно получается compose_project_name задать для всех docker-compose
Köfte
ты поднимаешь компом и он создает дефаулт сеть, если ты укажешь -p то это будет myproject_default
Köfte
да
Lupsik Pupsik
так тоже норм да
Lupsik Pupsik
спасибо
Mihail
Всем привет!
▫️Разработчик в web-студии
▫️Back-end разработчик
▫️Могу помочь в разных вопросах
▫️Хочу постись дзен докера
▫️Волгоград
▫️На хабре
#whois
Lupsik Pupsik
короче nginx-proxy классный
Köfte
с автоматическим https вообще сказка)
Lupsik Pupsik
вообще охуеть – node_modules не появляется в билде
Lupsik Pupsik
на маке работает, на серваке щас нет
Denis
Npm install?
Lupsik Pupsik
Npm install?
оно работает если зайти в контейнер и сделать npm install
Lupsik Pupsik
но при билде из Dockerfile оно пустое
Lupsik Pupsik
оставляет какую-то папку _MEIoMEKBZ
Denis
А содержимое Dockerfile?
Lupsik Pupsik
FROM 111h/alpine-passenger-standalone
ARG NODE_ENV
ARG PACKAGES=""
RUN apk add --update --no-cache $PACKAGES
COPY package.json ./
RUN NODE_ENV=$NODE_ENV npm install --unsafe-perm
COPY . ./
Lupsik Pupsik
причем он пишет типа блаблабла пакеты блаблабла success
Lupsik Pupsik
а в контейнере пусто
Lupsik Pupsik
node_modules нет точнее
Denis
Тебе бы директорию явно прописать в контейнере
Lupsik Pupsik
Lupsik Pupsik
он же копирует все остальное
Denis
Типа WORKDIR /src перед COPY
Lupsik Pupsik
оно в образе выше
Lupsik Pupsik
оно копирует все файлы из .
Lupsik Pupsik
но без node_modules
Lupsik Pupsik
внутри какая-то папка _MEIoMEKBZ
Lupsik Pupsik
Step 5 : COPY package.json ./
---> Using cache
---> 2da3e676484f
Step 6 : RUN npm install --no-optional
---> Using cache
---> 7891f8a189bc
Step 7 : RUN ls -la
---> Running in eb2723773e91
total 16
drwxr-xr-x 2 root root 4096 Sep 20 22:33 .
drwxr-xr-x 5 root root 4096 Sep 20 21:30 ..
-rw-r--r-- 1 root root 90 Sep 14 20:45 config.ru
-rw-r--r-- 1 root root 3062 Sep 20 21:11 package.json
Denis
Попробуй WORKDIR поставить :)
Lupsik Pupsik
Lupsik Pupsik
видишь ls -la
Lupsik Pupsik
пусто
Denis
pwd
Lupsik Pupsik
pwd
http://pastebin.com/QaE0GdCQ
Denis
FROM 111h/alpine-passenger-standalone
ARG NODE_ENV
ARG PACKAGES=""
RUN apk add —update —no-cache $PACKAGES
RUN mkdir -p /usr/src/app
# Install app dependencies
ADD package.json /usr/src/app/
RUN cd /usr/src/app && npm install
# Build the bundle
ADD . /usr/src/app/
RUN ls -al /usr/src/app
RUN cd /usr/src/app && npm run start
EXPOSE 3000
WORKDIR /usr/src/app
CMD [ "npm", "start" ]
Lupsik Pupsik
посмотри пастебин
Lupsik Pupsik
там видно все
Denis
да вижу
Lupsik Pupsik
да вижу
короче если я устанавливаю в /tmp эти node_modules то там они появляются
но если я копирую в свою WORKDIR после установки то в WORKDIR оно не появляется
если на уровень ниже то ок
Denis
А что там в ls -al /src и ls -al /src/app?
Denis
Или можешь показать Dockerfile второго образа ?
Lupsik Pupsik
Или можешь показать Dockerfile второго образа ?
FROM 111h/alpine-passenger-standalone
ARG NODE_ENV
ARG PACKAGES=""
RUN apk add --update --no-cache $PACKAGES
RUN echo $APP_PATH
COPY package.json /tmp/package.json
RUN cd /tmp && NODE_ENV=$NODE_ENV npm install
RUN cp -a /tmp/node_modules /usr/src/app
RUN pwd
RUN ls -la
Lupsik Pupsik
вот если оставить /usr/src/app то оно не копирует туда
Lupsik Pupsik
аватарка с превью иллюстрирует именно то что я сейчас чувствую
Denis
))
Lupsik Pupsik
короче я могу поставить NODE_PATH другую просто но это пиздец конечно
Denis
COPY config.ru /usr/src/app/
Denis
вот эта строка опасная https://github.com/111h/alpine-passenger-standalone/blob/master/Dockerfile#L21
Lupsik Pupsik
да я тоже думаю про нее
Lupsik Pupsik
но почему так
Denis
если сделаешь тоже самое но в /usr/src/app2?
Denis
Всё заработает?
Lupsik Pupsik
остальные файлы появляются в /usr/src/app
Lupsik Pupsik
но не node_modules
Denis
Там gem install rack выполняется в ней, это Ruby, я хз, какие могут быть эффекты у этого
Denis
а тебе зачем вообще именно этот образ?
Denis
У тебя цель вообще какая у этого мероприятия?)
Lupsik Pupsik
и оно работает у меня на маке все ок
Lupsik Pupsik
а так я щас красиво юзаю для руби и ноды один и тот же образ и в дев и в проде
Denis
а вот так значит
Lupsik Pupsik
короче так работает
FROM 111h/alpine-passenger-standalone
ARG NODE_ENV
ARG PACKAGES=""
RUN apk add --update --no-cache $PACKAGES
RUN echo $APP_PATH
RUN mkdir /install
COPY package.json /install
WORKDIR /install
RUN NODE_ENV=$NODE_ENV npm install
ENV NODE_PATH=/install/node_modules
WORKDIR $APP_PATH
COPY . ./
Lupsik Pupsik
но я не понимаю почему
Denis
или тоже самое но с /usr/src/app2 да?
Lupsik Pupsik
Lupsik Pupsik
проблема скорее всего в VOLUME
Lupsik Pupsik
но непонятно в какой плоскости
Denis
https://github.com/docker/docker/issues/17470#issuecomment-167971763
Denis
Может в параметрах запуска ещё разница
Denis
Вот краткий экскурс в VOLUME http://container-solutions.com/understanding-volumes-docker/