Таймураз
Более осмысленное разбиение на сущности, но большого профита не вижу от этого в маленьких проектах
Kons
Я так понимаю, что наследование имеет смысл, когда нужно окружение одинаковое в нескольких образах
Aleksand
Это я понял Есть смысл разбивать на образы, когда используются слои?
есть, скорость сборки, в нормальном раскладе итоговый образ должен на 3-5 слоев отличаться от базового, тут и будут релизные изменения фактические
Kons
ну это копейки
Только начали :)
Vadim
Это я понял Есть смысл разбивать на образы, когда используются слои?
есть смысл использовать базовые образы со своего реджистри, собранные с предустановленными плюшками. Ускоряет CI
Таймураз
Уже вижу это в проекте на php
Kons
переиспользование и оптимизация скорее
Одинаковое окружение и означает, что меньше разных слоев, и больше общих
Aleksand
Одинаковое окружение и означает, что меньше разных слоев, и больше общих
ну да, для этого и нужно наследование от абстрагированных образов
Vadim
здесь еще вопрос безопасности и стабильности работы приложения, собранных на основе базовых образов с паблик докер хаба
Aleksand
ну и у образа сильно имеет значение размер
Kons
ну и у образа сильно имеет значение размер
На днях выяснил, что chown на директорию увеличивает размер образа на размер этой директории
Kons
ну официальные репы как правило приличные все же
Да, к тому же всегда можно посмотреть, что там внутри, если хочется всё знать.
Vadim
ну официальные репы как правило приличные все же
в основном да, но если например собирать на базе node:alpine, без указания версии, в один момент можно столкнуться с тем, что образ приложения не совсем рабочий...
Aleksand
вообще топ это бинари го в альпайне, 10 мб продуктового образа это вышак вообще
Aleksand
плюс есть еще гениальная техника уменьшения размера - после сборки всего что нужно удалить все что уже не нужно, радикально помогает порой
Vadim
согласен) я к тому, что нельзя про это забывать. Ну и когда базовый образ в приватном реестре, как то спокойнее)
Таймураз
Таймураз
Вот так?
Kons
да :)
Aleksand
да :)
npm из образа можно удалять в конце)
hamper 𓅝
Что-то у меня npm поломался, при попытке сделать npm i -g npm оно ставит в /usr/lib/node_modules но почему то owner не root а один из юзеров а группа вообще dialout.
hamper 𓅝
А, похоже не я один такой https://github.com/npm/npm/issues/16766
Sergey
nvm не слышал?
hamper 𓅝
ты ноду глобально поставил?
Нода стоит глобально из репозитория.
hamper 𓅝
Мне она и нужна глобально.
Sergey
лол
Sergey
на рабочей машине?
hamper 𓅝
А почему бы и нет, если серваком кроме меня еще несколько знакомых пользуются? Каждому по ноде ставить?
Таймураз
nvm поставить на рут пользователя?
hamper 𓅝
А смысл, если она из репозитория прекрасно ставится? Зачем лишние извращения?
Таймураз
Таймураз
И не задаваться тем вопросом, которым ты задаешься
Таймураз
nvm install x.x.x
Таймураз
Конкретная версия ноды
hamper 𓅝
Ну я уже разобрался что это косяк npm@5, решение просто откат на 4 версию.
hamper 𓅝
Пока не починят.
hamper 𓅝
npm i -g npm@4 && npm i -g npm@4
hamper 𓅝
И нет проблем.
Таймураз
дважды? зачем?
Таймураз
npm i -g npm и нет проблем Спокойно обновляюсь
hamper 𓅝
Потому что второй запуск фиксит права.
hamper 𓅝
Я выше ссылку на issue скинл, у меня та же проблема.
hamper 𓅝
Собственно там и причина обозначена https://github.com/npm/npm/issues/16766#issuecomment-305920346
Aleksand
apt upgrade
ну это не работает вообще) так можно делать только в контейнере, иначе гарантирована жесточайшая боль
hamper 𓅝
ну это не работает вообще) так можно делать только в контейнере, иначе гарантирована жесточайшая боль
Ну я так не делаю, я по привычке в aptitude смотрю что хочет пообновляться и тыкаю только то, что нужно.
hamper 𓅝
И это личный сервак, собственно дропнуть все и переустановить не проблема если уж совсем поломается, хотя за последние лет 10 такое если и бывало, то максимум пару раз да и то по другим причинам.
Sergey
apt upgrade
Извращенец
hamper 𓅝
Ну в контейнерах такое вполне допустимо, если пофиг на данные.
hamper 𓅝
На рабочих серверах я такое естественно никогда делать не буду, там любые обновления только при острой необходимости и сначала попробовав на тестовом серваке.
Ilya
суровые одмины не делают опдейтов
Антон
не холивара ради - кто какую орм считает наиболее удобной? (с парочкой аргументов, если можно)
Kons
Я в данный момент работаю с objection. Мне нравится простота объявления моделей и реляций. Ну и вообще простота либы. До этого пробовал секвелайз. Не зашёл что-то.
hamper 𓅝
У меня коллега сейчас go-pg пользуется, ему нравится.
Антон
я поресерчил немного - пока кроме секвелайза ничего не нашел подходящего, мне важно, чтоб при создании модели создавалась и миграция для нее автоматом (ну или из модели можно было сгенерить миграции)
Антон
ну и выполнение сидов есть - мелочь, а приятно)
hamper 𓅝
А тьфу, перепутал. ))
Ilya
а так я сам им пользуюсь.
Антон
тссс. сиквалайз индексы не синкает нихуя.
в плане при создании моделей в миграции не вставляются данные по индексам? или я что-то не так понял?
Ilya
ну если ты делаешь sync - таблицы он создаст
Ilya
праймари кейс сгенерит
Антон
не, я про кли
Ilya
а остальные ключи - хуй
Ilya
а. в миграциях такая же хуйня
Антон
на продакшне делать синк - это ахтунг)
Ilya
то что ты там в модели индексы нарисовал - ему допезды
Aleksand
А тьфу, перепутал. ))
а где чаты гошников?! есть хорошие?
Антон
ну, неудобно, конечно, но индексы можно в готовые миграции напихать ручками
Ilya
на продакшне делать синк - это ахтунг)
ну и в миграции в createTable если индексы указать - эта тварь их не создаст. надо руками добивать еще )).then( () => queryInterface.addIndex( 'leisure_hotel_map', ['leisure_id', 'hotel_id'], { indexName: 'idx_lh_map_lh'} ))
hamper 𓅝
а где чаты гошников?! есть хорошие?
Я знаю только @progo и @gogolang но там в основном те же люди.