magnoom
а допустимо ли делать как в статье написано, пункт A firewall that doesn’t smoosh Docker iptables rules ?
magnoom
или есть лучшие практики?
Konstantin
magnoom
ну у меня на удаленном хосте cadvisor крутится, я не хочу его всему инету светить
Kool
похоже то что надо
Kool
а блин, его в докер хаб репах нет
Konstantin
Kool
не
Kool
придется в свою лить
Konstantin
а вообще реализация гавно
Kool
Konstantin
IP Хардкодить в "докерах" не лучшая идея, а домен - nginx не умеет изкоробки динамически резолвить
Kool
где хардкод
Kool
они пробрасываются через переменную окружения
Kool
вернее днс имя
Konstantin
ну вот с доменом не сильно рабочий вариант
Kool
рабочий
Kool
у меня сварм
Konstantin
Kool
ну в неумелых руках умирает )
Konstantin
Konstantin
скорее бы уже рисовать стали)
Kool
Kool
настроенный руками
Konstantin
как умирает)
Kool
попробую
Kool
раньше всегда nginx-ом деплоил
Konstantin
не осилил DFP? :)
Konstantin
он у меня в проде работал, хз что там у тебя не пошло
Andrei
Хай
Andrei
Кто-то юзал AWS Fargate
Andrei
??
Andrei
Konstantin
тут и плюсы же, у меня прокси на воркерах тоже поднимались
Konstantin
+ там суть чуть другая, там ещё DFM подключается
Konstantin
https://monitor.dockerflow.com
Petrovich
Я запустил в какой-то папке контейнер через docker-compose и забыл
Petrovich
как мне сделать down на него?
Petrovich
если я не помню папку
Konstantin
Konstantin
маунты есть? глянь путь
Konstantin
или в inspect контейнера, может какая инфа
Petrovich
мде, как же глупо оказалось
Petrovich
docker rm id
Konstantin
docker rm id
нене, такое не всегда работает + композ не только контейнеры создаёт
Petrovich
да на остальное как-то насрать, думаю этого хватит
Petrovich
спасибо
Konstantin
если restart: always, то docker rm - не катит
LEXASOFT
а если наоборот потреял yml как его восстоновить?
Artem
Ребят, как в docker-compose прокинуть папку с хоста внутрь контейнера, чтобы в контейнере были права на запись в эту папку?
Artem
- ./data:/home/jarvis/data:rw так?
Artem
не работает так(
Konstantin
Artem
да, приложение пишет, что нет доступа и контейнер постоянно рестартует
Artem
если делаю без маунта, то всё работает
Artem
но надо как-то сохранять эту папку на самом хосту
Konstantin
Права на папку есть? Приложение не от рута наверное
Artem
не от рута, да, но папку в хоуме сделал юзера, под которым контейнер работает
Artem
или права на самом хосту?
Konstantin
uid на хосте и в контейнере должны совпадать в твоём случае
rusment
надо в композ добавить user: username - https://stackoverflow.com/questions/49916803/docker-compose-make-shared-volume-writable-permission-denied
Artem
вот так выглядит сам докерфайл
Artem
FROM java:8
MAINTAINER Artem Kozlov <kozlov.artem@gmail.com>
RUN useradd -c 'Jarvis user' -m -d /home/jarvis -s /bin/bash jarvis
RUN mkdir -p /opt/satt/data
RUN chown -R jarvis:jarvis /opt/satt/
WORKDIR /opt/csat/
USER jarvis
COPY *.jar app.jar
ENTRYPOINT exec java $JAVA_OPTS -jar app.jar
Artem
вот композ
Artem
version: '2'
services:
tw-cesar-key:
image: tw-manager:${TAG_ID}
restart: always
container_name: tw-manager
env_file: ./docker.env
volumes:
- ./application.properties:/opt/satt/application.properties
- ./data:/home/jarvis/data
Konstantin
Artem
сопаставить уид с любым юзером на хосте?
Artem
Konstantin
Evgeniy
доброго времени суток, подскажите
проект собирается от случайного пользователя, на этапе билда в контейнерах создаю пользователей с заданными uid, gid. Обхожу исходники и проставляю необходимые права.
Если поднимаю докер для разработки, то в конфиге указываю uid моего пользователя и все хорошо, могу редактировать
но приходиться писать много инструкций в докерфайлах для настройки: создание пользователей, определение прав доступа. Особенно весело когда делаешь всё на unixsocket
может я что-то то не правильно делаю? и есть способы легче?
Konstantin
Evgeniy
вот эти блоки приходиться дублировать во всех контейнерах в том или ином виде
# ползователь нашего проекта, которому будут принадлежать исходники
RUN addgroup --system --gid ${PROJECT_GROUP_ID} ${PROJECT_NAME} && \
adduser --uid ${PROJECT_USER_ID} --system --disabled-login --disabled-password --no-create-home --gid ${PROJECT_GROUP_ID} ${PROJECT_NAME} \
&& adduser www-data ${PROJECT_NAME}
# для unix-сокета между php-fpm и nginx
RUN addgroup --gid ${UNIX_SOCKET_PHP_FPM_USER_ID} --system ${UNIX_SOCKET_PHP_FPM_USERNAME} && \
adduser --uid ${UNIX_SOCKET_PHP_FPM_GROUP_ID} --system --disabled-login --disabled-password --no-create-home --gid ${UNIX_SOCKET_PHP_FPM_GROUP_ID} ${UNIX_SOCKET_PHP_FPM_USERNAME} \
&& adduser www-data ${UNIX_SOCKET_PHP_FPM_USERNAME}
Evgeniy
"в том или ином" - допустим наладить взаимодействие сервисов по unixsocket надо во всех контейнерах, которые используют сервис описывать права на sock файл