E
прости за мат )
E
может кто ip подкинит свой рабочий ?
Bogdan
docker pull postgres уже 2ю неделю не але
Bohdan
а не подскажите можно как-то переменные пихать в компос-файл
services:
${POSTGRES_HOST}:
Bohdan
а то что-то неработает
Bogdan
Bogdan
переменные есть на уровне YAML самого
Bohdan
там нет отмеченого правильного ответа
Bogdan
и? &var *var работает
Bohdan
не работает
Bohdan
Bogdan
а, $ само собой не заработает
Bohdan
хм ... а как тогда?
Bogdan
откуда ты собственно хочешь {POSTGRES_HOST} взять?
Bohdan
ну так брал, но ошибка таже
Bohdan
да и докер-компос нормально кушает без кудрявых скобок
Bogdan
где присваивается значение этой перемнной? это переменная окружения хоста или что?
Bohdan
с файла .env
Bohdan
он автоматом читается, все работает, кроме service name
Bogdan
не, так не заработает.
Bohdan
тут есть ишью
Bohdan
https://github.com/docker/compose/issues/3858
Bogdan
service_name к env не имеет отношения
Bohdan
но оно как бы старенькое, может что-то подшаманили за 2 года.
Bohdan
Тогда я так понимаю никак?
Bogdan
ни как видимо
Bohdan
сенкс, жаль, а еще вопросик, а можно как-то определить что бы один контейнер использовал переменные окружения другого контейнера. Хочу копипасту убрать?
Bohdan
Bohdan
ок, сейчас у меня две секции, с одинаковыми переменными, можно ли как-то прокидывать переменные?
Bohdan
пробовал в .env файл пихнуть, но он там переменные не вычисляют значение других переменных
Server
services:
node-app1:
image: reframe/make // вместо build: как подтянуть и запустить image?
container_name : node-app1
restart: always
expose:
- "3000"
environment:
VIRTUAL_HOST: example.ru
как в docker-compose вместо build: подтянуть и запустить image?
Анатолий
сам спросил и в вопросе указал ответ? крут...
Anonymous
Приветствую всех, у меня нубский вопрос:
Может ли docker-compose многократно выполнять команду CMD из dockerfile?
Например, если в CMD sh скрипт, записывающий базу, это может делаться многократно?
(Т.е. удалил что-то из базы, а дамп снова залился, т.к. docker-compose снова выполнил sh скрипт)
Bohdan
ребята, а можно как-то в прописать путь к файлу .env при запуске компосера, а то
/usr/local/bin/docker-compose -f /var/www/coins/docker-compose.yml up
походу не считывает env файл
bazzilic
Bohdan
вот например когда я запускаю с другой папки, вот такая ошибка
Evgenii
Bohdan
Kyrylo
Ребят, вопрос: если в докер композе прописать волумку оно ее смапит с хостовой машині в контейнер, и потом если в докере писать в єту папку оно появится на хосте.
В данном случае если в контейнере были файлы они затрутся.
Вопрос: а как сделать чтобы эти файлы не перетирались?
Kyrylo
кроме того что замапить другую директорию и переписать файлы в нее :)
Bohdan
как бы получается что для компоса что бы считать .env файл, он должен быть в текущей директории
Evgenii
теперь буду называть volume только как волумка
Evgenii
Artem
Evgenii
bazzilic
Можно их cp из образа в хостовую папку
bazzilic
Можно в билде их cp в сторонку, а в стартовом скрипте cp обратно
bazzilic
Он не это предлагал, вроде
Kyrylo
ну грубо говоря так и получается - файлы изначально в одной папке, а потом выбрасываются в другую, уже прилинкованную на хост
Kyrylo
просто их хочется сохранить часть, между перезапусками
Artem
какой то странный кейс
Artem
мне кажется с архитектурой чет не то.
bazzilic
А я предлагаю наоборот: в билде их положи в другую папку, а при запуске скопируй в папку прилинкованную с хвоста
Kyrylo
Evgenii
в данном случае это в папкi
Artem
Kyrylo
Используется мульти-стэйдж докер, они выкачивает репу и отталкиваясь от нее билдит. результат запускается в другом контейнере, но при этом хочется чтобы результат сохранялся на хосте (в частности 4 файлика)
Хотя конечно это все херня ;)
bazzilic
Не очень костыльно, на самом деле. Я так понимаю, образ mysql примерно это и делает в начале
Kyrylo
по хорошему одним докером просто откомпилить, и результат сохранить на хост, а от него уже запускаться на втором
bazzilic
Пускай дев машину в интернет через кеширующий прокси ))
Sergey
кто то пробовал ELK в Docker? Сколько суммарно дефолтная конфигурация жрет?)
Artem
зависит от потока который туда завернешь
Artem
если у тебя сайтик с посещаемостью 1 юзер в день, то ниче не жрет почти)
Server
Здесь я понял как запускать локальные проекты в связке с NGINX
https://github.com/gHashTag/docker-multiproxywebsite-nodejs
Как сделать тоже самое, но с образами?
Сейчас конфиг docker-compose такой:
version: "3"
services:
node-app1:
image: playra/react-hello-world:0.2
container_name : node-app1
restart: always
expose:
- "3000"
environment:
virtual_host: crc.yoga
node-app2:
image: playra/react-hello-world:0.2
container_name : node-app2
restart: always
expose:
- "3000"
environment:
VIRTUAL_HOST: www.crc.yoga
node-proxy:
build: ./node-proxy
container_name : node-proxy
restart : always
links:
- node-app1
- node-app2
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
ports:
- 80:80
- 443:443
но если захожу по адресу http://crc.yoga или crc.yoga
то 503 Service Temporarily Unavailable
Где ошибаюсь?
Artem
во первых выкинуть нахер links и не списывать больше оттуда откуда списывался этот конфиг
Artem
т.к. compose 3 и links это дибилизм
Server
Artem
ничем, они и так в одной сети будут обращайся по именам сервисов
Server
Artem
не знаю что там за node_proxy билдится но с nginx был бы просто proxy_pass http://node-app1
Server
Artem
и виртуалхосты должны быть на проксике прописаны, а не на приложениях
Artem
приложения лучше вообще оставить просто слушать на порту и пускай проксик разруливает запросы
Server
Artem
без разницы, они ни на что не влияют
Server