Andrey
λesha
Привет всем! Полез тут грязыми манагерскими руками ковырятся в этих ваших линуксах и прибил процесс, который был запущен из под докера. Осознав ошибку убил контейнер и перезапустил. Однако после этого перестал экспоузиться порт из этого контейнера. Пробую подключиться телнетом, получаю "Connection closed by foreign host." Как это можео полечить? Машину перезапускать пробовал, сносить и устанавливать докер заново тоже пробовал. Система Debian Jessie, Docker version 17.06.0-ce, build 02c1d87.
λesha
Не прод.
λesha
В общем сделал docker ps -a. Оказалось что тот контейнер все еще каким-то образом учитывается (буду благодарен за объяснение). Сделал docker rm для него и все заработало.
Aleksand
λesha
λesha
И почему докер разрешил запускать новый контейнер с тем же именем.
Aleksand
Да
ну статус у него после завершения процессов внутри "exited", после остановки он меняет состояние а не удаляется автоматом
Aleksand
порты при этом он не держит никакие
Pavel
Бан плиз
Artem
λesha
Sun
Редис, и три ящика с сервисами
Sun
Сначала редис получил sigterm, а за ним каскадом легли остальные
Sun
От кого он его получил, я так и не понял
twwlf
Возможно, макось убила процесс виртуалки
Sun
Ну, с виртуалбоксом и параллелсом она так себя не ведёт.
twwlf
Ну так там наверняка гипервизор за этим следит
Serg
Всем привет! Подскажите , кто знает. Имею gitlab ci с registry и ранером. Все на одной машине. При пуле\пуше в registry образы ходят через интернет. Как сделать так, что бы для этого использовался localhost?
Александр
Как можно провайдить ENV переменные в Dockerfile через docker-compose
Пробую использовать такой формат
serviceA:
build:
context: .
dockerfile: DevDockerfile
args:
HOST_IP: docker.for.mac.localhost
А внутри обращаться к переменной как к ${HOST_IP}
Но она не видится таким образом.
Запускаю все просто через docker-compose up
Александр
При сборке имею ошибку вида
[Warning] One or more build-args [HOST_IP] were not consumed
Александр
docker v 17.0.6
Artem
Александр
Это делал
Artem
и?
Александр
Не передаются через args в Docekrfile переменные
Александр
с ENV все хорошо через
env_file: [.env] или environment: -...
Artem
аа, в в докерфайл, я то про сам компоуз
Александр
Сам композ хорошо видит env
Александр
А вот при build Dockerfile не видит переменные, которые я через args настройку пытаюсь провайдить
Александр
https://docs.docker.com/compose/compose-file/compose-file-v2/#args
Artem
Александр
Вот по этому ману
Serg
Aleksand
Для авто удаления есть ключ --rm при поднятии
да, только при его использовании нередко натыкаешься на Conflict. The container name "xxx" is already in use by container, не сразу доходит что этот ключ удаляет только за собой.
Artem
заливать в регистри не через сам регистри будет еще более костыльно
Artem
Artem
он удаляет только тот контейнер к которому был применен ключ после его остановки
Boris 🦍
ПРивет, подскажите. почему после рестарта контейнера изменения в конфиге не сбрасываются на те, что были при сборке образа? я думал, что должно так происходить, конфиг и директория не смаплены в хост
Artem
не посре рестарта, а после пересоздания
Dmitriy
Dmitriy
Вижу! Не так понял. Но по вопросу отвечу - stop и start не сбрасывают изменения до состояния на момент создания контейнера. Пока контейнер жив, сколь угодно можно делать stop и start и данные внутри можно изменять!
🦠
Тихо буть)
Александр
Konstantin
Так в доке же описано как передавать и ENV и ARGS
Artem
через docker stack deploy указывая компоуз файл можно указать конкретный сервис который запустить или только весь стак можно опустить/поднять?
Александр
Ну так не работает через args
Александр
serviceA:
build:
context: .
dockerfile: DevDockerfile
args:
HOST_IP: docker.for.mac.localhost
Александр
В dockerfile пишу ${HOST_IP} или $HOST_IP и не видится там значение
Александр
Все по доке делаю https://docs.docker.com/compose/compose-file/compose-file-v2/#args
Aleksand
Aleksand
ARG HOST_IP
Aleksand
тогда должна быть видна
Александр
Пробовал в FROM версию прокинуть, пробовал в блок
&& echo "xdebug.remote_host=docker.for.mac.localhost" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
прокинуть
Aleksand
Александр
FROM php:7.1-fpm
RUN pecl install xdebug \
&& docker-php-ext-install -j$(nproc) mysqli pdo pdo_mysql \
&& docker-php-ext-enable xdebug \
&& echo "xdebug.remote_enable=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_autostart=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_host=docker.for.mac.localhost" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_port=9000" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
Александр
Версию базовго image и xdebug.remote_host заменять пытаюсь
Aleksand
Александр
FROM php:${BASE_IMAGE_VERSION}
echo "xdebug.remote_host=${HOST_IP}" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
Александр
Вот так вот делал
Aleksand
передать аргументы мало, их надо еще принять
Александр
Александр
Ссылку дал выше, доку к compose смотрел
Александр
в блое args передал
Aleksand
ну он передавал все правильно, по доке
Aleksand
в блое args передал
First, specify the arguments in your Dockerfile:
только с начала доку читай)
Александр
Ну переходить на более низкий уровень не хочется никому никогда, если на высоком кажется все понятным
Aleksand
да
Александр
а там ньюансы свои
Aleksand
Александр
Это пример как бы без композа это выглядит
Aleksand
там все явно, просто внимательнее смотри
Александр
Доку есть куда улучшать ) Думаю, я не первый наступил
Aleksand
ну не гони так сразу, заблудился человек в доке, бывает