@docker_ru

Страница 635 из 1375
Bohdan
07.06.2018
19:35:10
а если в скрипте проверить все через вызов printenv?

Boris
07.06.2018
19:36:43
Пробовал делать echo переменной, перед самым запуском docker-compose. Переменную пишет и тут же сообщает об её отсутствии в docker-compose

Возможно из bash скрипта докер запускается от другого юзера, и не имеет доступа ко всем переменным?

Google
Sergey
07.06.2018
21:38:34
вопрос как ты объявил переменную в сессии (если просто FOO="bar" то надо еще set -a вроде, не помню... allexport типа)

а если через export - то надо смотреть как ты юзаешь переменную в compose

можешь ради эксперемента вызвать любой bash скрипт который выводит переменную окружения.

поведение в целом должно быть идентичным

Oleg
08.06.2018
01:28:51
есть композ из 2х контейнеров, если я расишряю один имедж, то будут параметры из композа переданы в расширеный имедж или нужно что-то указывать?

Vladimir
08.06.2018
04:04:17
добрый день, есть такой вопрос, я использую image wordpress как мне добавить команду a2enmod headers, перед стартом Apache, через command?

Ayupov
08.06.2018
06:22:05
Всем привет. FROM node:carbon WORKDIR /usr/src/app COPY . . RUN npm install EXPOSE 8080 CMD [ "npm", "start" ] Docker поднимается, но по порту не может получить доступ к сайту. Не знаете в чем может быть причина?

docker run -p 92:8080 $image_name

Vladimir
08.06.2018
06:31:27
А что говорит netstat -ntlp | grep 92 docker ps -a

?

Эмин
08.06.2018
06:32:15
вы с хостовой машины не можете получить доступ к сайту?

или поднятый докер не может получить доступ в другой контейнер?

Google
Ayupov
08.06.2018
06:36:01


вы с хостовой машины не можете получить доступ к сайту?
не могу получить доступ к содержимому поднятого контейнера. по localhost пишет "не удается получить доступ к сайту"

Vladimir
08.06.2018
06:44:26
тогда надо смотреть логи контейнера, что всё работает

Yuryi
08.06.2018
07:02:11


Sergey
08.06.2018
07:15:11
можно указать откуда кэш брать, но no-cache в композе нет

Ayupov
08.06.2018
07:16:40
Yuryi
08.06.2018
07:16:43
можно указать откуда кэш брать, но no-cache в композе нет
у меня просто там в одном из шагов идёт компиляция варки мавеном. и я хочу, чтобы он её компилил каждый раз заново. Это возможно ? даже если костылями

Bohdan
08.06.2018
07:18:01
костылем - подкидывай какой-нибудь рандомный файлик или идентификатор

Yuryi
08.06.2018
07:20:31
костылем - подкидывай какой-нибудь рандомный файлик или идентификатор
сори за тупые вопросы. Но подкидывать куда ? в докерфайл ? или в компоуз ? мне вроде советовали, мол если прокинуть переменную в докерфайл, не должно кешить, я начал передавать пароли и логины (для пробы) из компоуза в докерфайл, но он всё равно кешит((

Bohdan
08.06.2018
07:21:56
ну там примитивный вариант - делать каждый раз что-то вроде RUN tail /dev/urandom > random.txt перед шагом со сборкой должно по идее сработать

вру, tail не сработает

а head у меня локально сработал

Artem
08.06.2018
07:22:31
а покажи докерфайл

Yuryi
08.06.2018
07:28:27
Artem
08.06.2018
07:32:28
не уверен, но попробуй сверху добавить RUN apt update

Sergey
08.06.2018
07:55:51
предлагаю через ENV прокидывать в докер имя варника, а папка с варниками будет содержать разные версии файлов, и каждая новая версия (war.1.1.39, war.1.2.1.39) будет пересобирать докер на том слое где в прошлый раз вызывался варник

Yuryi
08.06.2018
07:58:38
окей, спс, попробую

Max
08.06.2018
08:03:29
Бред какой-то - смысл варник пихать в контейнер? Лучше ложить его на волюме и при деплойменте настроить удаление-добавление варника на волюме. Будет прирост в сборке, так как контейнер не пересобирается, а просто рестартится при добавлении нового варника.

Google
Max
08.06.2018
08:04:48
этоже надо потом парится с подкачкой нового слоя в регистри в будудем и потом подтягивание новых изменений на сервере. Много дополнительной и ненужной работы.

Sergey
08.06.2018
08:10:25
в любом случае даже если вы в том прокинете с новой версией пакета будет пересборка

Max
08.06.2018
08:12:56
а зачем пробрасывать версию варника? Томкэту вообще все-равно что за варник лежит - он в директорию смотрит и ищет варники

Yuryi
08.06.2018
08:14:33
Бред какой-то - смысл варник пихать в контейнер? Лучше ложить его на волюме и при деплойменте настроить удаление-добавление варника на волюме. Будет прирост в сборке, так как контейнер не пересобирается, а просто рестартится при добавлении нового варника.
я понимаю что кэш это ок, и в случае изменения он пересоберётся. Но сейчас я учусь работать с компоузом и собирать всё это дело вместе, то удаляю файлы из волюма то ещё что, а он закешен и считает что варник на месте. Вот как временной решение хотел чтобы он перекомпиливал заново

Max
08.06.2018
08:20:59
Ну правильно он думаэт, по этому со скрипта деплоя нужно перезапустить докер контейнер (убить запущеный томкэт, чтобы он по новой разпаковал варник. Это просто костыльное решение. Пихать что-то в контейнер есть смысл если это должен быть самодостаточный контейнер, да и то - с бинарником готовым, а не архив, который еще потом разпаковать нужно.

постройте 1 контейнер с томкэтом и натравливайте его на директорию с варником (директорию вынести на волюме). Таким образом если у вас 10-Н сервисов - нужно будет просто реплейз и рестарт контейнера делать, вместо полного ребилода контенера с новым варником. Реюз будет одного и того же контенера (а не 10-Н новых). Это простая оптимизация.

Max
08.06.2018
08:26:41
паз то другой будет для другого арр. А узнает он по вашей команде - вы пошлете команду докеру перезапустить контиейнер. Докер не хранит темповские файлы - он заново прочитает фолдер с варником и разпакует варник по новой

Sergey
08.06.2018
08:26:47
можно вообще упороться, в гитлабе раннером собирать новый образ, пушить его в репу и уже деплоить в композе\кубере с новыми варниками

Sergey
08.06.2018
08:35:34
кладешь вариник - тык и готово:)

Yuryi
08.06.2018
08:37:23
я чутка ограничен. Заказчик хочет видеть 3 файла: докерфайл, компоуз-файл и енв для компоуза. Абсолютно все операции мол надо производить в них.

Yuryi
08.06.2018
08:38:16
сиайка для этих операций - низя

тогда конечный результат вам показали
спасиб, ближе к обеду буду пробовать

Dmitry
08.06.2018
11:57:21
Парни, такой вопрос. А нельзя в докерфайлы вставлять алиасы инструкций? Например я хочу при билде каждого контейнера делать одинаковые команды, но описать их в одном месте, чтобы потом просто изменить.

Евгений
08.06.2018
11:58:01
Можешь запускать какой-то sh файл где будут команды, подходит?

Google
Andrey
08.06.2018
11:58:22
либо базовый образ использовать

Dmitry
08.06.2018
12:10:13
Можешь запускать какой-то sh файл где будут команды, подходит?
Не совсем. Мне нужно ложить мой корневой серт и запускать команды на обновление хранилища

Проще всего получается накопироваать

Alexandra
08.06.2018
12:47:51
Привет. Такой вопрос: Я использую "storage-driver": "devicemapper" и образы по умолчанию как я понимаю лежат в /var/lib/docker/devicemapper/devicemapper может кто-нибудь ткнуть меня носом в ссылку как заставить его хранить их в другом месте?

And
08.06.2018
12:55:40
Привет. Кто-нибудь nginx+letsencrypt в swarm поднимал? Мне надо чтоб инстансы nginx были на всех нодах, везде есть веб-приложения. При этом как я понимаю остальные контейнеры можно держать только на менеджере. Но сходу не работает, поделитесь опытом.

Jentry
08.06.2018
13:05:54
Привет. Кто-нибудь nginx+letsencrypt в swarm поднимал? Мне надо чтоб инстансы nginx были на всех нодах, везде есть веб-приложения. При этом как я понимаю остальные контейнеры можно держать только на менеджере. Но сходу не работает, поделитесь опытом.
Что-то все в кашу, nginx с обновлением серта это одно, архитектура вашего решения это другое, сервисы на мастер-ноде другое и не очень решение. Можно один nginx-балансер для всего, можно десяток на каждой ноде, в чем именно вопрос непонятно

And
08.06.2018
13:07:47
в swarm не поднимал, но похожую задачу решил по этому пособию https://blog.ssdnodes.com/blog/tutorial-extending-docker-nginx-host-multiple-websites-ssl/
Ага ?? Так я тоже делал, все ок. Но сейчас на swarm переходим, поэтому и пытаюсь мигрировать всё это дело. Пока не оч успешно...

Jentry
08.06.2018
13:13:26
веб-сайты на воркерах и менеджерах это запредельные космические технологии, попробуй начать с декомпозиции вопроса

Boris
08.06.2018
13:14:27
Сложно понять вопрос, но если я правильно его понял - проще всего поставить сертификат только на балансере

And
08.06.2018
13:49:09
Мне казалось все итак понятно.. ок. Есть swarm с одним менеджером и одним воркером. На каждом запущено по 1 сайту. Своего сертификата нет, их выдаёт динамически letsencrypt. Как в swarm на менеджере добавить стек nginx+letsencrypt так, чтобы оба сайта стали доступны из вне по доменам, указанным в VIRTUAL_HOST в соответствующих контейнерах сайтов? Масштабирование и балансировщик сейчас не рассматриваем.

Artiom
08.06.2018
14:40:25
Всем привет. Может кто знает, как в docker-compose.yml можно скрыть внешний ip контейнера и задать только внутренний ip (что бы к контейнеру не было доступа через docker exec -ti id bash).

Andrey
08.06.2018
14:42:32
Причем здесь ip?

Andrey
08.06.2018
14:43:30
Docker exec не по сети (контейнера) работает

Данила
08.06.2018
14:43:46
Очевидное решение - убери bash из контейнера

Artiom
08.06.2018
14:45:32
хорошо. мне надо закрыть доступ к контейнеру из вне и создать доступ только через ssh

под ssh я понимаю контейнер

Artur
08.06.2018
15:00:28
Google
Artiom
08.06.2018
15:29:57
Видимо не так объяснил ) у меня есть контейнер php. он расположен на 172.24.0.3. Например можно написать ping 172.24.0.3 и мы получим ответ от него (64 bytes from 172.24.0.3: icmp_seq=1 ttl=64 time=0.144 ms). Как можно сделать так, что бы доступа не было?

Artiom
08.06.2018
16:24:06
Скажите пожалуйста, ip для контейнера всегда надо или его генерацию можно как-то отключить?

Igor
08.06.2018
18:40:46
гитхаб? майкрософт здесь не пройдет, разве что в окно

Страница 635 из 1375