Andrey
если серьезно, то на этот вопрос есть только один правильный ответ: контейнеру не нужно знать адрес хостовой машины
NM
Semyon
Ребят, хочу забилдить проджект с помощью docker-compose. Там 2 докерфайла, но сервисы берут только один из них, может кто сталкивался с такой проблемой?
Ihar
Barthez
Semyon
NM
Semyon
Линукс
NM
Линукс
Это не ответ - что за ОС бубунта или RHEL там разные SystemD реализация
Semyon
NM
ну так FROM-FROM ? что мешает даже без компоста сделать ?
Ryskin Artem
Господа, посоветуйте чат сисадминов плз. Есть вопросы по настройке БД
NM
А здесь не сисадмины разве ? :-)
Andrey
говори за себя
Andrey
Dan
Dan
Все чаты тут
George
George
Ну, ребята правильно говорят - передать через переменную
George
А это доменное имя доступно только на маках и винде
George
Но тебе никто не мешает сделать его руками на линуксе ))
Ryskin Artem
Andrey
и дальше типа того: docker run --name agent --net=host --env-file=dock.env и что там...
Andrey
внутри в коде читать этот файл (ну мне так надо было)
Andrey
Andrey
убрав IPHOST и команды ifconfig eth0 | sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p' | sed -e 's/^//'
будет только ip-address
Andrey
это для Ubuntu
Andrey
второй способ в коде или через curl - получать свой "внешний" ip-address например от сервиса типа: ifconfig.co
Andrey
на ресурсе расписано как делать
Ihar
Ryskin Artem
Andrey
George
George
Та же Кассандра, переписанная на с++
Ryskin Artem
Andrey
NM
Vladimir
Можно ли в докере уменьшить размер папки overlay какими нибудь махинациями с контейнером? Например, слиянием слоев или что-то вроде этого, т.е. без очистки самих данных?
Vladimir
Конкретно: контейнер дженкинса, развернул, установил плагины, настроил... Хотелось немного сжать, если это вообще возможно.
George
George
оверлей сбросится
Vladimir
Хммм... Интересно. При этом все данные в волуме корректно останутся и я ничего не потеряю. Верно?
George
George
профит
Anton
а в .env файле нельзя использовать переменные? Например UID=${UID}
George
в .env - нет
Anton
а может .env закэшиться?
George
нет
George
точнее не так
Anton
UID=1000
GID=1000
MYSQL_USER=root
MYSQL_ROOT_PASSWORD=password
запускаю сервисы docker-compose up -d, а к мускулу по старому паролю подключаюсь. Пытаюсь ввести пароль password - не подходит, хотя переменные UID и GID прошли
George
у тебя компоуз не следит за ним
Anton
все, норм, нельзя было называть переменные так же как и в самом докер-компоуз
Anton
было бы хорошо, если бы из .env файла можно было бы прочитать в bash скрипте
George
Anton
ну пишу скрипт, который склонирует репозиторий, composer зависимости, миграцию проведет и т.д., вот чтоб не писать в самом скрипте пути и логин/пароль к мускулу - импортировать эти данные из .env
George
он в докере запускается или снаружи ?
George
из .env легко импортировать в баш скрипте. Как там... source вроде достаточно сделать
Anton
снаружи
George
или циклом
Anton
но может быть конфликт, т.к. в .env файле указаны руками UID,GID и вдруг не совпадут с реальными UID/GID пользователя
Anton
а может вообще тогда в начале скрипта локальные переменные и в них выцепить из .env файла нужные переменные, вот только чем... пока на ум приходит sed
George
ты можешь скрипт выполнять в докере )
Anton
или cat ./.env | grep ...
George
чтоб в изолированной среде )
George
сложно потом будет поддерживать )
Anton
та это на раз для тестового задания
George
варианты - подумай об ансибле или мейкфайле
Anton
точно, мейкфайл, слышал. но не работал... аж страшно...
Anton
а только у меня не работает tab после docker-compose? Предлагает файлы и папки, а не команды docker-compose
Anton
что на работе, что дома
Anton
всё, нашел в доке
Anton
не надо ставить компоуз через стандартный apt install
George
Александр
Использовать пакетные менеджеры в пакетных дистрибутивах - для слабаков
Александр
Утречка
Aleksey