George
вряд ли
George
я думаю, что докер на хостовой системе ищет гит для каких-то своих темных делишек ))))
Danila
Можно ли заставить докер сохранять IP адреса контейнеров? Создаю 2 контейнера. У одного IP - 172.20.0.3, у другого - 172.20.0.2 После перезапуска хоста контейнеры "меняются" IP адресами.
Danila
Как можно этого избежать? Т.е. мне нужно, чтобы ip адрес контейнеров после перезапуска хоста не изменялся
Danila
Только мне не хотелось бы при запуске указывать этот IPшник
George
gaal@linux-x1:~> docker run --help | grep "\-\-ip" --ip string IPv4 address (e.g., 172.30.100.104) --ip6 string IPv6 address (e.g., 2001:db8::33) --ipc string IPC mode to use
George
так понятно?
Danila
gaal@linux-x1:~> docker run --help | grep "\-\-ip" --ip string IPv4 address (e.g., 172.30.100.104) --ip6 string IPv6 address (e.g., 2001:db8::33) --ipc string IPC mode to use
я же говорю, что мне не хотелось бы указывать конкретный IP при запуске контейнера
George
ну, не бывает по-другому
George
либо указываешь, либо они прыгают
inqfen
я же говорю, что мне не хотелось бы указывать конкретный IP при запуске контейнера
Если тебе это нужно это для их взаимодействия - суй их в одну сеть и они будут резолвить друг друга по именам
Vadim
привет подскажите плз, мне нужно с помощью команды exec выполнить скрипт внутри запущенного контейнера и получить вывод в консоле, как это правильно сделать ? docker exec -it ${conteiner_id} sh -c "/usr/start.sh"
Vitalii
Привет, может кто-то помочь с ошибкой "/usr/bin/env: 'bash\r': No such file or directory"? спасибо
Vitalii
пытаюсь запаковать спринг бут микросервис
Vitalii
в Dockerfile "RUN ./service.sh dev_build"
Vadim
Что запускаешь ?
Скрипт настройки окружения под бинарник
Vadim
Все правильно говоришь
проблема в том что не отрабатывает, я не вижу эффекта, по сути с параметрами -it я должен увидеть вывод в консоль, но я не вижу ничего
Alex
Запускаю несколько процессов в контейнере при помощи supervisord.conf вот хотел бы туда переменные из dockerfile добавить сам запуск как CMD ["/usr/bin/supervisord"] в докерфайле ARG SERVER_ARG ENV SERVER_ENV -e $SERVER_ARG
Alex
так вроде туда %(SERVER_ENV)s
George
Делов-то
George
проблема в том что не отрабатывает, я не вижу эффекта, по сути с параметрами -it я должен увидеть вывод в консоль, но я не вижу ничего
Там нет никаких подводных камней. Более того - как будто параметры -it тебе и не нужны. Ты же не собираешься интерактивно взаимодействовать со скриптом ?
Vadim
Там нет никаких подводных камней. Более того - как будто параметры -it тебе и не нужны. Ты же не собираешься интерактивно взаимодействовать со скриптом ?
Проблема походу в том что я хочу запустить скрипт из примонтированном директории к запущенному контейнеру
Vadim
И странно он говорит что не видит файл
Alex
так вроде туда %(SERVER_ENV)s
так не работает
George
Нее. Я просто хотел увидеть что все отработало )
тогда зафигачить в конце echo в самом скрипте
Vadim
тогда зафигачить в конце echo в самом скрипте
походу он просто не видит это файл и я получаю No such file or directory
George
ls в том каталоге, где должен быть файл
George
может быть проблема пермишенов, chmod +x сделай и прочая-прочая-прочая
Vadim
ясно спасибо ! сейчас буду дебажить )
Alex
Ну, почитай как супервизорд передает переменные
сделал как по инструкции обявил переменную ARG SERVER_ARG ENV SERVER_ENV -e $SERVER_ARG а в supervisord.conf добавил command=rails server %(ENV_SERVER_ENV)s --binding 0.0.0.0 --port 3000 в частности пишут что добавить к переменной нужно ENV_ http://supervisord.org/configuration.html но нет - вот так выводит command=rails server %(ENV_SERVER_ENV)s --binding 0.0.0.0 --port 3000
Yan
Он не нужен.
Я просто только учусь этому продукту, пытаюсь собрать Elasticsearc+RabbitMQ+Mysql+phpmyadmine. И вот ч phpmyadmin основная трабла никак подключится не получается, даёт ошибку на github я посмотрел что прикрепляю .env и типа дублируют туда инфу о пользователе,базе и т.д. что и так в Docker-compose.yml я добавил!
Igor
кто нибудь сталкивался со следующей странной проблемой. Есть статика которая проксируется по /api на бэкенд, сами статика за балансером в котором есть http auth. Когда статика вне докера все ок. Но как только добавляю статику в имидж докера с нджинксом и пытаюсь проксироватьс балансера используя http auth у меня дропаются куки. Кто нибудь с таким сталкивался?
Igor
конфигурация нджинкса в контейнере: server { listen 80; root /app; index index.html; location / { try_files $uri $uri/ /index.html; } location /api { proxy_pass http://BACKEND_HOST; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
dzmitry
Привет, впорс на засыпку)): как скопировать файл из докер контейнера (на хост) находясь в этом контейнере?
neb0t
ssh :D
neb0t
scp file user@host:/path_to ...
neb0t
дополнительно можно сделать apt update && apt install ssh :D или ямл или пкж (хз какой контейнер) ...
dzmitry
scp file user@host:/path_to ...
спасибо, работает
Vadim
#!/usr/bin/env bash
это у меня конечно есть, права у файла все есть, файл по пути существует
Vadim
но все равно пишет что этого файла нет
Vadim
может быть проблема пермишенов, chmod +x сделай и прочая-прочая-прочая
права на месте, файл на месте . но при старте говорит что ег онет
Artem
Народ, привет. Посоветуйте, пожалуйста, как лучше сделать. Есть выделенный сервер. Есть два домена , которые на него смотрят (нап. dev.test.com и staging.test.com). dev.test.com должен матчиться с localhost:3000 , a staging.test.com c localhost:3001, это nodejs процессы , у каждого своя будет БД. Тут ясно, это разруливается через nginx. Если взять kubernetes, в нем запустить nginx, и потом два dоcker'а, т.е. для каждого nodejs+БД свой доккер. Это нормальная архитектура будет или ерунда какая-то ? И еще планируется Gitlab CI + auto deploy, тут я вообще хз как это прилепить к выше описанному.
Anton
кубернетес тебе тут зачем? или он уже у тебя есть?
слушай, ну ты как в первый раз видишь что в кубер запихивают все что можно)
Artem
George
Нет, нету его. А как тогда лучше?
никак не лучше ) в хероку пойти. А если серьезно - тебе даже слабенького сервера хватит. Ставишь на него docker + traefik + 2 инстанса ноды
George
все. И норм работает
Bral Bral
все. И норм работает
Так ты скинешь пример ?
Artem
Так ты скинешь пример ?
Было бы здорово!
Savo
всем привет, если у меня например корень проекта /app докер файл лежит в /app/deployments я пытаюсь скопировать все что есть в app в докер COPY ../. /usr/share/app но выдает ошибку COPY failed: Forbidden path outside the build context: ../. () как указать нужный контекст и делают ли вообще так? или всегда докер файл в корне хранят?
Georgiy
А траефик зачем?
а как распределишь трафик между нодами?
Anonymous
а как распределишь трафик между нодами?
Я не юзал это по, я задал вопрос для понимания чем эта штука будет полезна
George
Я не юзал это по, я задал вопрос для понимания чем эта штука будет полезна
Он умеет по лейблам докера балансить. Короче - с докером - чуть гибче, чем nginx. Либо тащить кастомизированный nginx типа как у jwuilder
Artem
все. И норм работает
Ещё вопрос - если к каждой ноде нужно свой cockroachdb инстанс, как тогда поступить?
Egor
Egor
Почему отдает такую ошибку?
Egor
и как от нее уйти?
herenickname
Привет ребятки, можно как-то обойти инструкции из докерфайла типо EXPOSE/ADD/COPY/VOLUME/USER? Я создаю контейнеры через апи, мне не нужно, чтобы образы сами что-то там маунтили без моего ведома)
herenickname
пысы: Я не собираюсь билдить что-то в докере, мне нужно статичные штуки запускать, типо веб-серверов на nodejs. Хочется хоть чуть-чуть обезопасить себя, не всегда получается контролировать что внутри образа.
Kirill
вариант собирать всё самому не рассматриваешь? ну а так - selinux умеет
Kirill
https://docs.docker.com/engine/security/security/