
Dan
17.08.2016
17:46:33
деплой и символические ссылки - это взаимоисключающие параграфы
особенно если речь идёт о контейнеризации
суть такова. мы джва года пилим софт, и выкатываем его таким образом, чтобы все зависимости были:
1. модульными
2. только с абсолютными путями
3. ни один конечный сервис не зависит более чем от 1-2 модулей.
таким образом мы понимаем в каком месте и где накосячили, при этом основной софт работает вообще без проблем и задержек.

Google

Dan
17.08.2016
17:48:58
хотя *дцать лет назад я работал кодером в одной въбстудии, где вполне себе в .htaccess прописывались интересные правила инклюда папки lib, выходившей на уровень выше от корня документов. типа таким образом мы защищали некоторые существвенно важные файлы
один мой кореш перенял эту странную, если не сказать более, традицию. и теперь у него сайтики, сделанные им - не стартуют в дефолтных конфигах, в которых без проблем за секунду могут стартовать любые типовые решения.
я к чему?
если есть выбор, то идите более простым путём.
если выбора нет, то идите просто простым путём.
символические ссылки это костыль

Ivan
17.08.2016
17:51:22

Dan
17.08.2016
17:51:35

Макс
17.08.2016
17:51:46

Ivan
17.08.2016
17:52:02
Тут скорее ты должен объяснять, почему нет)

Макс
17.08.2016
17:52:07
Я хотел тупо отдать докеру current и все.
Но не вышло.

Dan
17.08.2016
17:52:46

Google

Макс
17.08.2016
17:52:56
Сейчас загнал всю родительскую папку, но символическая ссылка не относительная, тоже не сработало. Сейчас попытаюсь относительную ссылку сделать )
Отлично, относительная работает )))

Ivan
17.08.2016
17:55:29
И роллбэк
Раскладываются нонстоп, автоматом. В приложении конфиг править не вариант.


Dan
17.08.2016
18:02:40
плохо, если в приложении конфиг править не вариант ) что могу сказать
я б в жопу приложение послал вместе с разрабами
и либо писал бы своё
либо думал как это всё сделать более просто и удобно
потому что там, где сложно - всегда жопа
доказано, битрикс (с)
но есть и хорошие новости
иногда. не так часто, как хотелось бы, но всё же, появляется такой софт, который нужен. конфигурируется через жопу, работает вообще сущностями в виде гномиков и единорогами с радугой. тем не менее, избавиться от него никак низя, потому что вообще пипец.
тогда можно использовать любые костыли. хоть симлинки, хоть батники, хоть текстовые файлы для хранения баз данных (и да, такое тоже имеет место быть)
иногда просто невозможно докеризировать что-то. такое бывает. иногда даже просто стоит оставить всё как есть.
но при этом, коллеги, я вас прошу, не забывайте всё вот это обоссать и сжечь, потому что там где костыли и говнокод - там ад и израиль.
эфир первого канала продолжит екатерина андреева, а я на ужин.


Александр
17.08.2016
18:08:41
Приятного аппетита
?

Max
17.08.2016
18:10:55

Google

Макс
17.08.2016
18:13:28
Гномики, единороги.... лучше бы решение подсказал ?

Ivan
17.08.2016
18:14:01

Magistr
17.08.2016
18:14:03

Макс
17.08.2016
18:14:21

Ivan
17.08.2016
18:14:45
ну так он поди её пытается "отресолвить" её внутри себя а там пусто или ещё какая защита от дурака/зацикливаний
Симлинк на что ссылается внутри контейнера?

Макс
17.08.2016
18:18:06
Хмм... в первом варианте я даже не представляю что происходит. Я думал, что логика работы у него такая: "берем содержимое директории и отображаем в директорию докера". В этом случае все должно было получиться. А если он поверх папки в контейнер поместил символическую ссылку, то ясно, что она ведет в никуда внутри контейнера.
Во втором варианте, когда я примаунтил родительскую директорию, то ссылка current ведет очевидно в никуда, так как она прямая. Если сделать относительную, то все ок.

Ivan
17.08.2016
18:19:49
Не распарсил

Макс
17.08.2016
18:21:19
Ну да, как бы работают. Не работает сценарий "примаунтить симлинк".

Ivan
17.08.2016
18:22:11
Что значит "примаунтить симлинк"?

Ivan
17.08.2016
18:22:26
Симлинк - это, внезапно, ссылка на файл
Если файла нет, то она и не работает.

Dan
17.08.2016
18:22:53
https://github.com/docker/docker/issues/1676
это решит твой вопрос?

Макс
17.08.2016
18:23:08

Dan
17.08.2016
18:24:48
ну вот. собственно, если без сарказма говорить, то у докера (пока что) проблемы с симликами
поэтому рекомендация искать обходные пути, или абсолютные, или как-то иначе продумывать деплой

Google

Dan
17.08.2016
18:25:09
?

Макс
17.08.2016
18:25:57
да, я уже придумал... но печально, что пришлось сунуть целый набор релизов в контейнер. Хотя, по идее, для работы нужно было треть только. (
Типа Docker-way и все такое )

Dan
17.08.2016
18:29:34
да, я такую видел. я очень очень постараюсь вспомнить её, и с радостью поделюсь ей здесь. помню что вопросом кошерного и корректного деплоя увлекался около двух месяцев назад в области рельсового приложения с шардингом. как раз тогда и находил

Макс
17.08.2016
18:30:49
Буду очень благодарен. А то все кругом говорят про правильный деплой, про то, что Докер типа именно для Деплоя. И все... А деталей нет.

Александр
17.08.2016
18:32:54
Докер для Деплоя - крылатая фраза без подтверждений :-\

ptchol
17.08.2016
18:36:56

Макс
17.08.2016
18:42:10

Admin
ERROR: S client not available

ptchol
17.08.2016
18:45:03
я к тому что симлинки хороши, но опасны

Макс
17.08.2016
18:50:28
Это понятно. Просто тут пока другого варианта нет. Я бы с удовольствием обошелся без них.

Dan
17.08.2016
18:52:59
хардлинки могут спасти?

ptchol
17.08.2016
18:55:56

Dan
17.08.2016
18:56:11
да я вот думаю что это вообще в корне не совсем нужный инструмент
я про Deployer

ptchol
17.08.2016
18:56:47
ты ща многих обидел

Dan
17.08.2016
18:57:13
ElectricFlow Deploy решает такую задачу?
я считаю что смотреть нужно в сторону Continious Deployment
и их tools соответственно

Google

Alex Milushev
17.08.2016
18:57:32

Dan
17.08.2016
18:57:33
просто под рукой нет лаптопа
http://electric-cloud.com/products/electricflow/deploy-automation/

ptchol
17.08.2016
18:58:20
капитана же на днях показали, он как раз пр овсе это, чем он вам не угодил ? )

Dan
17.08.2016
18:58:59
ну и капитан кстати да
октопус деплой, Go (который не язык), Codeship

Макс
17.08.2016
18:59:34

Dan
17.08.2016
19:00:13
так, ладно, пацаны, полчаса - минут 40, я буду у лаптопа, и смогу уже нормально посмотреть что там в хистори было пару месяцев назад по теме кошерных деплоев и CD
хотя, 100% тут уже видел похожие решения. возможно выше

Макс
17.08.2016
19:00:43
Просто так носиться от одного инструмента к другому - это очень грустная история. Так можно всю жизнь бегать )

ptchol
17.08.2016
19:01:39
Тогда тебе ужна платформа, возьми какой нить tsuru
не ?
просто имхо CI это не про "прогнать тесты, нацелить на новый контейнер балансер"

Evgeny
17.08.2016
19:03:42
Чот мне кажется пора второй пост пинить - описание того что такое симлинк

Dan
17.08.2016
19:03:58
тут кстати я так понял что не CI нужно, а именно CD. только не деливери а полноценный деплой
и автоматизировать всё к чертям, чтоб джюс на карибах попивать

Макс
17.08.2016
19:05:04

ptchol
17.08.2016
19:05:57
к тому времени когда появится достаточное кол-во тестов, они станут бестолковыми, потому что их станет дохрена, и саппортить их будет невозможно
парадокс тестов блеать )

Макс
17.08.2016
19:06:21
Еще недавно все через ftp и ручками. Deployer + Gitlab - это прорыв )))
+ докер и разделение на dev/prod...