Konstantin
Мне иногда хочется помочь, но я тупо не знаю как. За всё время почти без косяков докер работает🙄
mr.
Привет. Подскажите в 2х словах, как деплой через докер сделать? Пока что вижу следующие шаги: 1) Поднять регистр 2) Сбилдить и запушить образ 3) На проде стянуть и запустить 4) Каким-то демоном проверять, что есть новый билд, и если есть - пуллить новый Что-то пропустил? В k8s пока что не могу, у меня лапки.
Sergey
@devops_ru
ах ты хитрец
mr.
Этот чат только о том, как билдить образы?)))
Konstantin
ах ты хитрец
да потому что нифига это непро докер
Konstantin
Этот чат только о том, как билдить образы?)))
да, мы пока и с этим туго справляемся
mr.
да, мы пока и с этим туго справляемся
Ахаха, ясно. Понял, спасибо.
Petrovich
Который будет сообщать куданибудь что новый образ заехал
Виктор
Привет всем. Помогите, пожалуйста, разрулить ситуацию магическую. Написал файлик docker-compose, все работало. Но volume для БД заполнялся от имени юзера gitlab-www (что странно: я не нашел причин тому, чтобы это был именно этот юзер). Решил попробовать дописать строку user: 1000:1000 в сервис db. Не заработало. Удалил эту строку. С тех пор, в т.ч. после ребилда сервисов я не могу подключиться к db из app под предлогом SQLSTATE[HY000] [1130] Host '172.31.0.3' is not allowed to connect to this MySQL server. Подскажите, пожалуйста, в чем дело?
Виктор
Собсна, сам конфиг
Petr
GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.31.0.3' IDENTIFIED BY 'some_characters' WITH GRANT OPTION; FLUSH PRIVILEGES;
Petr
а так по сути он итак должен работать
Petr
может ты учетку создал
Petr
Виктор
может ты учетку создал
Образ офф мускульный, логины/пароли управляются через переменные окружения.
Petr
убей контейнер удали
Petr
создай новый
Petr
если стэйт хранится в волуме
Petr
делай бэкап нужной бд
Petr
и дропай волум
Konstantin
Образ офф мускульный, логины/пароли управляются через переменные окружения.
там нюанс - они не совсем управляются, они инициализируются при первом запуске - дальше смена уже не работает, только через консоль мускла
Konstantin
почему
потому что это уже хотфиксы ненужные, а ему надо изначально правильно всё сделать
Konstantin
да и хардкодить IP тоже не надо
Petr
ну изначально таких проблем быть не должно было
Konstantin
я объяснил выше почему так, 90% так и происходит. Entrypoint никто никогда не смотрит
Виктор
Изначально не было.... Но добавил и удалил строку в конфиге - и понеслась. Моя не понимать, почему :(
Konstantin
@nodekra ты про это сообще выше?
не знаю что ты спрашиваешь - делай как написал)
Виктор
Сделал, не помогло, сделал docker system prune --all, жду пока поднимется.
Petr
значит поменял пароль в мускуле
Konstantin
>Спрашивать >Делать по своему что не так?
Виктор
Видимо, не вполне понял, что ты имеешь ввиду
Konstantin
Видимо, не вполне понял, что ты имеешь ввиду
>Снеси базу в .docker/mysql-data/db и заново запусти композ
Виктор
>Снеси базу в .docker/mysql-data/db и заново запусти композ
Это не помогло. Ошибка осталась та же самая
Виктор
Теперь SQLSTATE[HY000] [2002] Connection refused
Dmitry
Установил актуальную версию докера по докам, но не стартует служба
Dmitry
Dec 12 08:38:37 dev-safe-sale systemd[1]: docker.service: Start request repeated too quickly. Dec 12 08:38:37 dev-safe-sale systemd[1]: Failed to start Docker Application Container Engine. -- Subject: Unit docker.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit docker.service has failed. -- -- The result is failed. Dec 12 08:38:37 dev-safe-sale systemd[1]: docker.service: Unit entered failed state. Dec 12 08:38:37 dev-safe-sale systemd[1]: docker.service: Failed with result 'start-limit-hit'.
Konstantin
Виктор
Сейчас у себя повторил, так работает. Покопаю в сторону повреждения конфигов приложения.
Виктор
Теперь SQLSTATE[HY000] [2002] Connection refused
Видимо, не лежала, а медленно поднималась. Прям ооочень медленно) Сейчас работает, спасибо большое.
Konstantin
Видимо, не лежала, а медленно поднималась. Прям ооочень медленно) Сейчас работает, спасибо большое.
просто не меняй креденшилсы в ENV после инициализации и будет щастЯ
Виктор
А подскажи еще, пожалуйста, как сделать файлы в volume доступными для редактирования юзером на хосте? Для того и добавлял user: 1000:1000, но этот вариант не прокатывает, сервис db не виден из app. Если можно - наведи на литературу, которая поможет понять, как связана настройка user и видимость сервиса из другого сервиса.
Виктор
Нужно это для ci/cd кейсов. Тесты повторно не запускаются, т.к. у юзера раннера нет прав удалить файлы БД. Или это каким-то другим способом решать лучше?
Виктор
примонтировать в volume папку с хоста, не?
так и сделано, см. следующее сообщение
Зulcom 🕊
https://habr.com/post/425101/
Виктор
Спасибо, прочту
Илья
А попробуй docker logs
Илья
или как там оно
Виктор
Вооо, спасибо)
Виктор
У докера прекрасная документация, но когда не знаешь, что в ней есть и что там искать - малоэффективная :(
Виктор
2018-12-12T10:57:05.099682Z 0 [ERROR] [MY-010460] [Server] --initialize specified but the data directory exists and is not writable. Aborting. 2018-12-12T10:57:05.099699Z 0 [ERROR] [MY-013236] [Server] Newly created data directory /var/lib/mysql/ is unusable. You can safely remove it. 2018-12-12T10:57:05.099887Z 0 [ERROR] [MY-010119] [Server] Aborting
Виктор
Чет я без мыслей, как это разрешить
Виктор
Запускаю так: sudo rm -rf .docker/mysql-data/db/* docker-compose up -d
Виктор
поставил права 777 на папку с данными мускула - и работает.... пока :)
Konstantin
леченье всех бед
Илья
ШУТКА
Konstantin
himioterapiya
поможет?
Джон
Ренат
Кто нибудь может объяснить что такое "Сетевые контейнеры"?
Andrey
леченье всех бед
прочитал как печенье
arts
прочитал как печенье
печенье всех бред
Ильдар
Кто нибудь может объяснить что такое "Сетевые контейнеры"?
звучит как неудачная калька при переводе. контекст дай
Ренат
звучит как неудачная калька при переводе. контекст дай
http://docker.crank.ru/docs/docker-engine/learn-by-example/network-containers/