Если у меня вдруг окажется баг в корной либе, которая отправляет сетевые запросы, я скажу: «ну тут ничего не поделаешь, в либе баг, мы не сможем суппортить такие сценарии». Я нихрена не понимаю, как всё это работает.
Как выглядит итоговый докер контейнер, его можно просто скопировать в другое место?
Если не вдаваться в подробности — как набор файлов в изолированной файловой системе. Скопировать можно либо используя команды docker export/import, либо, что делается чаще докер просто push`ится в хранилище контейнеров (тот же Gitlab имеет такое), и после pull`ится из него на целевой хост.
Что делать, если внутри контейнера нужно собрать программу из исходников?
Установить внутрь docker контейнера компилятор и зависимости и собрать программу.
Обычно для сборки программы и для запуска используются разные контейнеры. То есть один контейнер собирает программу из исходников, собирает пакет (deb/rpm/etc) и отправляет этот пакет в репозиторий. Из этого репозитория пакет устанавливается в другой docker контейнер (где нет компилятора и всего остального, что нужно только для сборки) и уже этот контейнер идет в тестинг/стейдж/прод
Список хороший, но получив такое на собеседовании, я предложу уволить архитектора. Потому что в теории это все выглядит красиво, а на практике смесь из нескольких php фреймворков и других языков программирования. Да еще и erlang. И зоопарк из ОС. И еще зачем-то указание Linux, после двух разных дистрибутивов.
Оно вам точно все вместе надо?
Если это web студия, пишушая на заказ, тут другой вопрос конечно, да.
Обсуждение инструмента без области применения — переливание из пустого в порожнее.
Если мне надо клетить девочек (ну или мальчиков) и я живу в городе, езжу по облагороженным паркам и имею доход для обслуживания — конечно giant / harley davidson.
Если я живу где-то в сельской жопе мира — я лучше сварю из арматуры, поставлю нормальные арматизаторы и буду гонять, не боясь сломать эту фигню.
В реальности я не куплю никакой, потому что живу на 5-м этаже в доме без лифта и имею проблемы со спиной, что выражается в отсутствии желания таскать на себе хоть что-то лишнее.
Это не нюансы работы фреймворка, это алгоритмы и структуры. Которые не имеют никакого отношения к фреймворку. И если знать их, разобраться в тонкостях конкретного фрейворка — вообще не проблема.
Анекдот про «В среднем они обе проститутки» знаете?
безопасны
Даааа? Возможно, если это велосипед написанный большой компанией, то код велосипеда проходит аудит безопасности. Возможно. А возможно и не проходит. А проходит ли аудит безопасности код, который используется этим велосипедом?
с документацией
Которой а) не хватает, потому приходится искать доклады, Best Practice и далее, далее б) Лучше бы не было, потому что она морально устарела или написана в стиле «вот переменная, вот класс, вот метод, вот так строится синхрофазатрон».
Я не говорю, что все фреймворки такие, но сам зачастую лезу в код очередной поделки, потому что в документации чушь.
по ним есть опыт у других разработчиков
Это не Rocker Science и не музыкальная теория, осилить фреймворк не составит труда любому более менее приличному разработчику. Вы не говорим о jQuery/Django/RoR программистах, которые просто не умеют ничего другого.
Учить надо алгоритмы и структуры, а не фреймворки. Не помню, кто сказал.
на них не тратится бюджет
Тратится. Фреймворк требует тестирования, проверки работы, исправления багов самого фреймворка, его обновления (и обновления вашего, кода который его использует).
Я не говорю, что нельзя использовать фреймворки. Конечно можно и нужно. Но стоит понимать, что фреймворк написан для решения конкретной задачи у конкретного человека (компании). Либо это монстр, который старается решить проблемы всех людей в мире и 99% его возможностей вы никогда не используете.
Так иди и учи, а не ной :)
Получат козлов отпущения.
Так что — ЕЩЕ КНИЖЕК!
Паниковать пока рано — все же даже вроже как восстанавливается зрение. По непонятным причинам :)
Мне просто тема интересна, так как пока вижу относительно нормально, но тоже куча страшных слов из офтальмалогии :(
Прошло 20 лет, мы снова поняли, что главное на странице — контент, а не рюшечки.
Если не вдаваться в подробности — как набор файлов в изолированной файловой системе. Скопировать можно либо используя команды docker export/import, либо, что делается чаще докер просто push`ится в хранилище контейнеров (тот же Gitlab имеет такое), и после pull`ится из него на целевой хост.
Установить внутрь docker контейнера компилятор и зависимости и собрать программу.
Обычно для сборки программы и для запуска используются разные контейнеры. То есть один контейнер собирает программу из исходников, собирает пакет (deb/rpm/etc) и отправляет этот пакет в репозиторий. Из этого репозитория пакет устанавливается в другой docker контейнер (где нет компилятора и всего остального, что нужно только для сборки) и уже этот контейнер идет в тестинг/стейдж/прод
Привет, Ведьма, если ты читаешь хабр!
Список хороший, но получив такое на собеседовании, я предложу уволить архитектора. Потому что в теории это все выглядит красиво, а на практике смесь из нескольких php фреймворков и других языков программирования. Да еще и erlang. И зоопарк из ОС. И еще зачем-то указание Linux, после двух разных дистрибутивов.
Оно вам точно все вместе надо?
Если это web студия, пишушая на заказ, тут другой вопрос конечно, да.
Если мне надо клетить девочек (ну или мальчиков) и я живу в городе, езжу по облагороженным паркам и имею доход для обслуживания — конечно giant / harley davidson.
Если я живу где-то в сельской жопе мира — я лучше сварю из арматуры, поставлю нормальные арматизаторы и буду гонять, не боясь сломать эту фигню.
В реальности я не куплю никакой, потому что живу на 5-м этаже в доме без лифта и имею проблемы со спиной, что выражается в отсутствии желания таскать на себе хоть что-то лишнее.
Анекдот про «В среднем они обе проститутки» знаете?
Даааа? Возможно, если это велосипед написанный большой компанией, то код велосипеда проходит аудит безопасности. Возможно. А возможно и не проходит. А проходит ли аудит безопасности код, который используется этим велосипедом?
Которой а) не хватает, потому приходится искать доклады, Best Practice и далее, далее б) Лучше бы не было, потому что она морально устарела или написана в стиле «вот переменная, вот класс, вот метод, вот так строится синхрофазатрон».
Я не говорю, что все фреймворки такие, но сам зачастую лезу в код очередной поделки, потому что в документации чушь.
Это не Rocker Science и не музыкальная теория, осилить фреймворк не составит труда любому более менее приличному разработчику. Вы не говорим о jQuery/Django/RoR программистах, которые просто не умеют ничего другого.
Учить надо алгоритмы и структуры, а не фреймворки. Не помню, кто сказал.
Тратится. Фреймворк требует тестирования, проверки работы, исправления багов самого фреймворка, его обновления (и обновления вашего, кода который его использует).
Я не говорю, что нельзя использовать фреймворки. Конечно можно и нужно. Но стоит понимать, что фреймворк написан для решения конкретной задачи у конкретного человека (компании). Либо это монстр, который старается решить проблемы всех людей в мире и 99% его возможностей вы никогда не используете.