George
Да чего развивать. Я уже устал по 10 раз отвечать. Хоть статью на хабр пиши
Anonymous
Было бы круто на реддит например (я без шуток). Ладно, погуглю. Но то что его возможности ограничены это понятно, да.
Anonymous
спасибо
Anonymous
NM
ты можешь !
NM
а как должно быть?) Казалось это чуть удобнее чем баш скрипты.
bash наше все. остальное как BMWX5 перед M5 1982 года 😉
Anonymous
Почему? есть такой вот образ https://github.com/docker-library/mariadb/blob/master/10.4/Dockerfile >VOLUME /var/lib/mysql От него я создаю 2 своих образа для двух разных проектов. Стреляет это таким образом: делаю # docker-compose up db и у меня в "бд" проекта A данные из проекта B
George
Только если ты в компоузе явно ему имя не поставил
Anonymous
не поставил
Anonymous
У тебя вольюм внутри докерфайла определенный анонимный
Ну так он наверное цепляет один и тот же? Скаченный образ mariadb совпадает, имена образов полученных при билде в docker compose наверное тоже.
Anonymous
Там даже dockerfile'ы из которых создается бд отличаются только переменными, которые я задаю и _содержимым_ файла, который я копирую.
Anonymous
окей, сейчас почитаю
Anonymous
в доках docker-compose есть такая вот опция, которую я конечно же не использую -V, --renew-anon-volumes Recreate anonymous volumes instead of retrieving data from the previous containers. А вообще я что-то не нашел разницы. Там просто написано что может быть сложно обратиться к тому же data volume через какое-то время, если он анонимный.
Stanislav
в какую сторону смотреть?( гугл отдает абстрактные решения
Anonymous
переменная не объявлена?
Stanislav
переменная не объявлена?
да я вот сейчас тоже подумал, но скрипты все готовые копирую
Anonymous
лол, вон там даже варнинг про это
Stanislav
лол, вон там даже варнинг про это
это переменная окружения?
Anonymous
Околофлуд: А я правильно понимаю что production-ready решение это самому собирать образы считая с нуля, а не использовать готовые образы от посторонних лиц? Например тот же mariadb, как в примере выше?
Anonymous
это переменная окружения?
https://docs.docker.com/compose/compose-file/#args думаю вот это
su
bash наше все. остальное как BMWX5 перед M5 1982 года 😉
я вот так обновляю образы, зачот? #!/bin/bash -e docker build -t smpp-gateway smpp (if [ $(docker ps -a | grep smpp-gateway | cut -d " " -f1) ]; then \ echo $(docker rm -f smpp-gateway); \ else \ echo OK; \ fi;); docker run --restart always -d --network="host" --name smpp-gateway smpp-gateway:latest
George
Так пробовал ? ХХХ замени на свое имя образа
su
Примерно, ога
мож наоборот, грохнуть сначала, потом собрать, хотя если грохнуть сначала, а потом не соберется, будет не очень похоже на CD ;)
Alex
отвлекся - так можно чисто один файл в контейнер подкидывать?
Alex
я развернул заббикс контейнер - ему что бы веб узлы мониторить нужно резолв хостов знать - а это как бы подмонтировать ему /etc/hosts
Alex
-v /etc/hosts:/etc/hosts
Alex
как и деректории?
George
В теории да
Alex
нет - не работает
Alex
так он не заменяет инфу
George
Слушай, ну, я так таймзону прокидывал
George
Мать его, понял
George
Докер же /etc/hosts сам меняет
George
Ключ --extra-hosts, чтобы туда записи добавить
George
Докер же /etc/hosts сам меняет
Вот в чем может быть дело
George
При каждом запуске контейнера внутри него переписывает /etc/hosts и докидывает туда записи для соседних контейнеров, условно
Alex
И что делать то?)
Andrey
И что делать то?)
--extra-hosts написал же георг
Andrey
Вообще можешь руками
Andrey
или через екзек
🅰️rkadiy
Всем привет. Играюсь вот с docker network overlay, но столкнулся с ошибкой вида Cannot start service container: endpoint with name container already exists in network nw-overlay Причем из сети её не выкинуть, даже если контейнер убил полностью. Кто нибудь с этим сталкивался? кластер сделал через консул
Дмитрий
всем привет, помогите как запустить докер контейнеры после перезагрузки сервера???
central
Посмотри в сторону restart: always
После перезагрузке надо вроде unless stoped
🅰️rkadiy
Stasyan
После перезагрузке надо вроде unless stoped
Не, при ребуте без разницы, это немного про другое инструкция, если не ошибаюсь
Daniil
Казалось бы достаточно добавить еще docker-compose имя и называть образа ${dockercomposename}-${imagename}. Опять велосипеды писать... или фичу им предложить...
Anonymous
docker compose с двумя сервисами, app и db. App должен работать с network_mode host, но тогда app не может линковать к db, пока я db также не прокину в хостовую сеть. Как можно разрешить эту проблему? Db в host прокидывать не вариант, все порты открываются наружу.
Daniil
не открывай прокинутые порты
Daniil
ты как бы сначала палки в колеса вставил, а потом спрашиваешь как жить
Anonymous
не открывай прокинутые порты
А как тогда подключиться к бд, если не открывать порт?
Anonymous
не открывай прокинутые порты
Да и порты автоматом все открываются, после прокидывании в хост
Daniil
я имею ввиду не открывать тот порт наружу где бд
Daniil
%) порты чего и куда
Anonymous
%) порты чего и куда
Сама база данных открывает порт, и если использовать bridge, то эти порты не становятся доступными извне, а только внутри хостовых сервисов. А если прокинуть на хост, то становится доступным извне. Пока вижу только вариант закрыть файрволом.
George
можно публиковать на 127.0.0.1:port:port, чтобы секса не иметь с файрволлом
George
но, конечно, тогда база будет доступна из контейнеров из той же докер-сети по имени и с хоста по порту... но не с других хостов или контейнеров
Daniil
да говнище, подтверди
говнище, будто школьники делали
George
ага. смузи-опсы
Daniil
Как и то что у докера нету изкоробочного решения для хранения информации о том как этот контейнер собственно говоря запускать.