Konstantin
Мы про вендорс говорили
first
Сложно же как
для меня ПОКА да, та при чем тут вендорс то?)
first
вендорс, это папка, где просто хранятся зависимости
Andrey
запускает сервер ноды, мне это не нужно, у меня нжинкс же
там суть в multistage. В том что ты одним контейнером собираешь, и уже собранное переносишь в итоговый. Таким образом тебе не нужно иметь утилиты для сборки в контейнере приложения. А если у тебя какой-нибудь фронтенд, то вообще можно нехило сэкономить ресурсов
Andrey
вендорс, это папка, где просто хранятся зависимости
ее создает composer. А он тебе не для чего кроме как для сборки не нужен. По этому смысла иметь его в контейнере приложения нет
Andrey
оке, а для npm'a есть смысл, так как там нужна нода?
У тебя фронт это статика или nodejs приложение?
Andrey
в сборке есть команда add serve?
first
У тебя фронт это статика или nodejs приложение?
я не ебу, я бэк хахах ну а вообще вроде не было
first
мне фронт говорил писать npm install + npm run build
Andrey
я не ебу, я бэк хахах ну а вообще вроде не было
у тебя бекенд и фронтенд это один и тот же код или разделено на frontend + api backend?
first
раздельно, фронт собирается через npm
Andrey
мне фронт говорил писать npm install + npm run build
А фронт уверено что оно так заработает ? 😄
first
крч ладно, пойду попробую, если что-нибудь сломаю, снова буду вас доставать :) Спасиб
Andrey
да, а почему бы и нет :)
ну потому что оно может быть там все вымазано нодой и хер заработает на nginx
Andrey
крч ладно, пойду попробую, если что-нибудь сломаю, снова буду вас доставать :) Спасиб
Вот докерфайл для сборки фронта который под nginx. Под себя только команды поправить. Он тебе поможет экономить 200-300мб на каждом билде 😄 # ---- Базовый Node ---- FROM node:8.11-alpine AS builder # Создать директорию app WORKDIR /app # ---- Зависимости ---- FROM builder AS dependencies # Используется символ подстановки для копирования как package.json, так и package-lock.json COPY package*.json ./ # Установить зависимости приложения, включая предназначенные для разработки ('devDependencies') RUN npm install && yarn install # ---- Скопировать файлы/билд ---- FROM dependencies AS build WORKDIR /app COPY . /app # Собрать статические файлы react/vue/angular RUN yarn build && yarn add serve # The production environment FROM nginx:1.14-alpine COPY --from=build /app/build /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
Andrey
Примерно такой же тебе понадобится для пыхи. Ну, а дальше уже совместить 😄
Max
https://medium.com/devschacht/praveen-durairaj-an-exhaustive-guide-to-writing-dockerfiles-for-node-js-web-apps-7b033bcc0b4f
Имхо в deve добавлять node_modules не как persistence volume это бред, на каждое добавление npm пакета будут переустанавливаться и скачиваться все пакеты заново
Max
Мы часто добавляем, удаляем или обновляем npm пакеты, и это очень много времени занимает, поэтому добавили волум на node_modules и ~/.npm
Max
Такое ощущение что такие статьи пишутся людьми, которые сами это не используют
Ильдар
Команда же идентична той, что в базовом образе, да? =)
Konstantin
Ага, ну бывают такие фэйспалмы, не без этого)
Konstantin
Всегда надо думать самому, а не слепо копировать
Andrey
Такое ощущение что такие статьи пишутся людьми, которые сами это не используют
Такие статьи пишутся для сборки под продакшен, не для разработки.
Max
Такие статьи пишутся для сборки под продакшен, не для разработки.
Я бы ничего не сказал, если бы там не писали о том, что это подходит и для разработки
Andrey
Konstantin
Нео серебряной пули, это пример, один из
A
Всем привет, ребят.
A
Compose еще актуален?
Max
Compose еще актуален?
Для дева или прода?
Andrey
Для прода
Некоторые ещё так делают, скажем так :)
Pavel
А как правильно?
Swarm + docker stack file вместо compose
Andrey
А как правильно?
Зависит от объема и сложности приложения.
smile
Compose еще актуален?
As docker stack does everything docker compose does, it’s a safe bet that docker stack will prevail. This means that docker-compose will probably be deprecated and won’t be supported eventually.
smile
а какие профиты от docker-stack?
Roman
А как правильно?
Никто не подскажет правильное решение. Так как все зависит от требований. В каких-то случаях docker-compose с головой будет а в некоторых и 100 воркеров в k8s не будет достаточно
smile
Ребзи, есть такой конфиг для приложения (для дева) https://pastebin.com/1aS1BLrQ. Нужно запустить паралельно второй проект, сначала думал просто скопировать этот же конфиг и запустить через docker-compose up -d, но это же будет сразу два инстанса нжинкса, мускула и админа, тоесть работать оно не должно. Значит, нужно отвязывать весь стафф от компоуза и запускать их глобально, а в приложениях просто коннектиться к ним?
smile
получаеться, что у нас будет 3 образа - апп1, апп2, мускул + нжинкс + пхпадмин. Но как тогда эффективно законтролировать столько образов? По идее, у меня каждый образ должен быть станделон, тоесть быть независимым от остальных, а тут у нас по 2 связи
Konstantin
Я хз чо там, с телефона.
Konstantin
Один прокси и 2 бэкэнда(композа)
Konstantin
Ничего нового
smile
Один прокси и 2 бэкэнда(композа)
понял, вообщем весь стафф оставлять в компоузах только добавить один прокси?
Konstantin
Как-то так, какой-то даже traefik
smile
Как-то так, какой-то даже traefik
опа, спасибо, пошел гуглить
Konstantin
Да тебе надо про сеть в докере почитать, нежели про прокси
Иван
В чем может быть здесь трабл? Error parsing reference: "docker:18.06.1 as docker" is not a valid repository/tag: invalid reference format
Иван
Docker file вроде как валидный, ибо это файл с офф репозитория docker-compose
Иван
старый докер?
Ну я делал apt-get update перед тем как его ставить
K.
Небольшой проект сделать от 500$. лс
Иван
Сейчас версия 1.5.1
Иван
ось какая на хосте?
linux mint Кастомная сборка
Andrey
docker -v
Andrey
че показывает
Иван
Docker version 17.03.2-ce, build f5ec1e2
Иван
Хм, ласт версия вроде 18.06.1 Окей, я понял
Andrey
не, на 17 должно уже работать
Andrey
покажи файл
Sergey
Хм, ласт версия вроде 18.06.1 Окей, я понял
на сайте гайд по установке в репе вечно старьё
Иван
На первой же строке валится
Konstantin
Andrey
Так обнови докер
та у него норм версия. в 17 же уже было "as blablabla"
Andrey
у меня на 17.05.0-ce норм отрабатывает. По крайней мере первая строка ))
Konstantin
Я не помню, ну ошибка явно как будто нет поддержки
Konstantin
И кажись так и есть, если я не путаю
Andrey
Балин, реально в 17.06 добавили судя по докам
Andrey
твоя версия еще не умеет алиасы