@docker_ru

Страница 1306 из 1375
George
27.06.2019
15:25:16
Либо! Либо тебе уже нужна не контейнерная виртуализация, а lxc/lxd

Vladislav
27.06.2019
15:44:37
Посоны, type-r FN2 красный нужен кому?

Pter
27.06.2019
15:45:27
Google
Vladislav
27.06.2019
15:46:00
Vadim
27.06.2019
15:47:32
за 220 возьму

Vladislav
27.06.2019
15:56:20
LEXASOFT
27.06.2019
16:33:17
Может на сбер? Разбираться еще в битках

zerc
27.06.2019
19:37:17
Гайз вопрос, собираю через docker-compose, добавил сервис db: image: postgres:11 volumes: - ./db_init/1_db_init.sql:/docker-entrypoint-initdb.d/1_db_init.sql - ./postgres-data:/var/lib/postgresql/data зашел в контейнер, файл внутри есть, но бд не инициализируется просвятите пожалуйста если на up не происходит сбор контейнера то в какой момент я должен это все инициализировать ? С одной стороны понятно что up только поднимает сервис, но как мне image пересобрать ???

George
28.06.2019
04:28:18
George
28.06.2019
05:02:30
По такой логике он бы не работал после рестарта
Первый запуск постгреса - создание бд, потом он рестартует, да

zerc
28.06.2019
07:33:10
Как ты сделал вывод что бд не запустилась?
потому что в логе было что то типа “контейнер остановлен с кодом 1 и ошибка”

Google
zerc
28.06.2019
07:35:13
за пару дней протестировал несколько сборок, постоянно было проблемы с внутренними скриптами докер файла или enrty. допустим офиц image postgre 10 падал на entry с ошибками на gosu и запуска постгре от рута

если у кого то есть хороший блок для compose postgre с прокидыванием volume и запуском инит скриптов, отблагадарю пиццой

Anton
28.06.2019
08:08:07
Коллеги gecube очень много помогает в чате. Предлагаю в благодарность поднять ему карму на хабре. https://habr.com/ru/users/gecube/

Evgeniy
28.06.2019
09:28:46
Всем привет! а Вы бы не могли подсказать? Эта ошибка 2019/06/28 07:17:31 [error] 8#8: *9 connect() failed (113: No route to host) while connecting to upstream, client: 172.19.0.1, server: hello.dev, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://172.19.0.3:9000", host: "172.19.0.1:8081" из-за не правильной настройки? При чем если только стоит такой параметр command: docker-php-ext-install mysqli pdo_mysql у php

George
28.06.2019
09:32:10
потому что у тебя почти наверняка php не стартанул

ты тупо перезаписал ТО, что стартует при запуске контейнера

вероятнее всего тебе нужно пересобрать образ и добавить в блок RUN docker-php-ext-install mysqli pdo_mysql

Ivgenich
28.06.2019
09:39:26
ИЛИ сделать docker inspect запущенного контейнера без command и проанализировать в нем cmd и entrypoint и правильно написать command с учетом того, что было забилдено в контейнер.

George
28.06.2019
09:42:34
ну да

и собрать его

Evgeniy
28.06.2019
09:44:36
ну да
Спасибо. Я думал прямо из compose можно

А не могли бы подсказать почему такая ошибка? Error response from daemon: the Dockerfile (Dockerfile) cannot be empty?

George
28.06.2019
10:03:17
ну, написано же

Evgeniy
28.06.2019
10:03:39
ну, написано же
Да, что не может быть пустым

но он не пустой

George
28.06.2019
10:03:51
а какой?

Evgeniy
28.06.2019
10:04:35
а какой?
FROM php:7.3.6-fpm MAINTAINER PHPtoday.ru <info@phptoday.ru> RUN apt-get update && apt-get install -y \ docker-php-ext-install mysqli pdo_mysql \ curl \ wget \ git \ libfreetype6-dev \ libjpeg62-turbo-dev \ libmcrypt-dev \ libpng12-dev \ WORKDIR /var/www CMD ["php-fpm"]

Google
George
28.06.2019
10:04:47
команда для сборки какая?

Evgeniy
28.06.2019
10:05:16
команда для сборки какая?
Прошу прощения. Смотрю не в той папке. Можете в меня плюнуть)) Спасибо)

Ivgenich
28.06.2019
10:16:19
Спасибо. Я думал прямо из compose можно
Можно. Я же объяснил как.

Evgeniy
28.06.2019
10:16:41
Можно. Я же объяснил как.
Для меня это пока сложно)

Ivgenich
28.06.2019
10:16:47
А ты попробуй.

Вот смотри. У меня есть контейнер с hubot, но я хочу добавить еще команд при старте, если я прописываю их в command в компоузе - я ломаю старт. Что я делаю. Сейчас на примере покажу попробую.

Григорий
28.06.2019
10:19:57
Привет Подскажите, если ли какой-нибудь гипотетический способ забрать файл из имейджа не собирая контейнер?)

Ivgenich
28.06.2019
10:20:08
Я стартую контейнер и делаю ему docker inspect и вижу следующее.

RUN: [ "/bin/sh", "-c", "node -e \"console.log(JSON.stringify('$EXTERNAL_SCRIPTS'.split(',')))\" > external-scripts.json && \tnpm install $(node -e \"console.log('$EXTERNAL_SCRIPTS'.split(',').join(' '))\") && \tbin/hubot -n $BOT_NAME -a rocketchat" ]

Т.е. это команда, чтобы поднялся сам hubot, если я в компоузе напишу command только со своей командой - я сломаю старт бота. Значит надо их объединить в самом компоузе. Т.е. команд будет выглядеть так.

command: [ "/bin/sh", "-c", "твоя_команда && node -e \"console.log(JSON.stringify('$$EXTERNAL_SCRIPTS'.split(',')))\" > external-scripts.json && \tnpm install $$(node -e \"console.log('$$EXTERNAL_SCRIPTS'.split(',').join(' '))\") && \tbin/hubot -n $$BOT_NAME -a rocketchat" ]

Ivgenich
28.06.2019
10:23:48
Ну или твоя_команда в конце или как угодно. Не забываем заменить $ на $$ если используются переменные, потому что одинарные попытается обработать сам compose и упадет.

Evgeniy
28.06.2019
10:25:51
George
28.06.2019
10:26:22
написано же

тебе надо доустановить mcrypt - вероятно через апт

https://linuxconfig.org/how-to-install-mcrypt-php-module-on-ubuntu-18-04-linux

Ivgenich
28.06.2019
10:27:59
https://www.techrepublic.com/article/how-to-install-mcrypt-for-php-7-2/

Прочитал внимательнее исходную проблему. Не делай как я посоветовал. В данном случае это не правильный подход. Надо править докерфайл и собирать. Это верный путь в данной ситуации.

Google
George
28.06.2019
10:32:42
но требуется быть очень аккуратным в любом случае

Ivgenich
28.06.2019
10:33:23
Ну в данном случае образ лучше пересобрать. Иначе у него при каждом рестарте будут модули доустанавливаться и время отнимать.

George
28.06.2019
10:33:40
согласен

это основной консерн

Maxim
28.06.2019
12:04:14
Ставлю в докерфайле убунту 18 и python3 \ python3-dev \ python3-pip \ python3-setuptools \ , в pycharm получаю



как так ? питон 2.7 не ставил

George
28.06.2019
12:05:49
так там по дефолту наверняк пихтон2

проверь which python, python -V

Maxim
28.06.2019
12:11:11
George
28.06.2019
12:11:42
опыт не пропьешь (с)

Babenko
28.06.2019
12:12:03
Привет всем! Вопрос на засыпку - куда пихать node_modules, в image или в volume? если эт вдруг разгорится в холивар - прошу прощения, прост мне нужно компетентное мнение)

George
28.06.2019
12:12:17
от ситуации зависит

скорее всего НЕ ТУДА и НЕ ТУДА

а пускай живут на хосте, где сборка проводится

Babenko
28.06.2019
12:13:13
но я ж не буду сборку на продакшне делать, верно?) я просто потом на прод спуллю image с хаба

George
28.06.2019
12:13:43
вариантов много. Опиши как пайплайн сборки у тебя сейчас работает

Babenko
28.06.2019
12:40:06
да на самом деле пайплайна нет, в проекте уже сделано всё не мной и просто спор зашёл на тему куда. челики собирают прод прямо на проде. я б так не делал, но что есть то есть

George
28.06.2019
12:40:22
нет, не надо прод на проде

Google
Alexander
28.06.2019
12:40:55
Всем добрый день! Тут возник ещё один вопрос: как правильнее накатывать миграции сервака на Node.js без оркестратора при деплое? Всё крутится на одном сервере, в контейнерах, деплой идёт с помощью Ansible через CI. Просто не хочется пихать запуск скрипта в CMD докерфайла, а то когда-то читал, что из-за шелл скрипта бывают периодически косяки в контексте обработки процессов

Babenko
28.06.2019
12:41:43
George
28.06.2019
12:45:00
если у тебя всего лишь один инстанс контейнера - ну, ок, засунь все в docker-entrypoint.sh, в котором логически сначала идут миграции, а потом вызов твоего node.js сервера

делов-то

все становится сложнее, если у тебя может быть несколько инстансов - без автоматизированного процесса деплоя тебе не обойтись. Будь то докер-компоуз с хелсчеками, мейкфайл, баш-простыня или плейбук на ансибле

это уже не столь принципиально

Babenko
28.06.2019
12:50:20
Да, спасиб огромное

George
28.06.2019
12:52:05
ну, будут моменты с этим

George
28.06.2019
12:52:26
первый - что тебе хелсчеку придется ставить стартовый интервал, который больше миграций, чтобы они не зафейлились

второй - exit code & pid - скорее всего проблем не вызовут

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