herenickname
А что с expose делать? В dockerfile может быть написать EXPOSE 80, а я хочу через API создать контейнер с expose на 81 порту tcp сделать только
su
А что с expose делать? В dockerfile может быть написать EXPOSE 80, а я хочу через API создать контейнер с expose на 81 порту tcp сделать только
делай, пофиг, при вызове из командной строки или через компоуз могут оверрайдиться твои настройки в докерфайле. через командную строку перегрузи на 81 порт
herenickname
пробовал, открывается 80 и 81 порт, а мне нужен только 81)
herenickname
считай, что у меня нет доступа к докерфайлу, это уже сбилженные образы(
su
считай, что у меня нет доступа к докерфайлу, это уже сбилженные образы(
тогда плохо перегружал одновременно не работает)
herenickname
странно, попробую скоро еще раз
Александр
У меня nginx-контейнер висит в overlay сети. Ну и все запросы к нему от клиентов имеют ip из этой сети а не реальные. Я правильно понимаю что единственный выход выносить nginx на хост-машину из контейнера дабы иметь доступ к реальным ip тех, кто стучаться?
George
из того, что ты написал - по сути - тебе только VOLUME мешает, который гарантированно создает анонимный вольюм. Остальные инструкции ничего не делают, т.к. они выполняются на этапе билда (представь себе, что образ докер контейнера == архив с файловой системой + метадата)
herenickname
из того, что ты написал - по сути - тебе только VOLUME мешает, который гарантированно создает анонимный вольюм. Остальные инструкции ничего не делают, т.к. они выполняются на этапе билда (представь себе, что образ докер контейнера == архив с файловой системой + метадата)
вчера пока писал в порыве страха, сильно не думал. Запускаешь рандомный образ из докерхаба, а потом в docker events видишь, что он там себе volume примонтировал, порты внутри открыл. Ну хоть publish не могут в dockerfile запихнуть)
George
на самом деле стремно другое
George
рандомный образ в докер хабе может содержать эксплуатацию CVEшки... докеровской...
George
"побег из песочницы"
herenickname
есть kata-containers
herenickname
упаковывает рантайм зону в маленькую вмку со своим ядром
George
да, правильная история
Evgeny
Всем привет. У кого-нибудь была проблема, что докер контейнер не может достучаться до интернета при включенном впн в Ubuntu 18.04? Как решали? Конфликтов в таблице маршрутизации не наблюдаю.
vismagilov
Шлюз по умолчанию vpn случайно не меняет на свой или таблицу маршрутизации заворачивая весь трафик через себя
George
о йо....
George
у тебя роутинг то включен на машине?
George
ты понимаешь, что докер - по сути работает - как будто у тебя не контейнеры, а настоящая сеть на фиг знает сколько узлов, подключенная к отдельному сетевому интерфейсу ?
George
может у тебя форвард DOCKER <-> VPN не настроен
George
там днище днищенское проблем может быть
George
я уж не говорю еще про то, что докеры тебе в VPN через MASQUERADE придется выпускать
George
🥺🥺🥺🥺
Evgeny
там днище днищенское проблем может быть
возможно. Но проблема появилась именно на убунте 18.04, на 16.04 с тем же впн и той же версией докера проблем не было.
Evgeny
у тебя роутинг то включен на машине?
я фронтенд разработчик(тупой в общем), в сетях и роутинге не шарю вообще. Но похоже придется подтянуть знания.
George
я фронтенд разработчик(тупой в общем), в сетях и роутинге не шарю вообще. Но похоже придется подтянуть знания.
сорян. Тут вариантов 4 1. забить. 2. найти другой решение 3. найти чувака, чтобы заплатить ему, чтобы он настроил 4. погуглить, повысить квалификацию, решить проблему в текущей конфе
Evgeny
сорян. Тут вариантов 4 1. забить. 2. найти другой решение 3. найти чувака, чтобы заплатить ему, чтобы он настроил 4. погуглить, повысить квалификацию, решить проблему в текущей конфе
1 и второй точно нет. без вариантов. Нужно стучаться при сборке в закрытый контур заказчика. 3-й тоже без вариантов=) а наши местные админы сказали, что "сорян, мы только винду поддерживаем". Спасибо, буду искать.
George
> й тоже без вариантов=) а наши местные админы сказали, что "сорян, мы только винду поддерживаем".
George
George
одмины такие одмины
George
слушай, а что мешает впн на внешнюю машину вынести?
George
т.е. у тебя впн и докеры сейчас на одной тачке. Как бы норм, но не очень
George
вынеси впн наружу - у тебя как минимум боль ниже поясницы от сращивания докера, файрволла и впна исчезнет
Evgeny
т.е. у тебя впн и докеры сейчас на одной тачке. Как бы норм, но не очень
хм, для этого нужна тачка. А из-за трех человек, которые пользуются впн-ом заказчика, компания заморачиваться не будет=)
George
настрой на своем хосте виртуализацию )))) и попили на виртуалки
Evgeny
настрой на своем хосте виртуализацию )))) и попили на виртуалки
с таким же успехом я могу из-под винды под убунтовой виртуалкой сидеть=) но работать под виртуалкой та еще боль.
Udjin
Народ, подскажите пожалуйста: Задача - простенькое ноджиес приложение в докере, его задача - запустить билд, нода сбилдила, появилась папка с файлами в контейнере. Её надо как-то раздавать. Я пришёл к тому, что раздавать надо nginx, который тоже в докере, и на него будет натравлен nginx который на хосте, с LE и прочим. написал вот такой докер-файл: FROM node:11 as builder COPY . /admin WORKDIR /admin RUN npm install RUN npm install -g @angular/cli RUN ng build --prod FROM nginx-alpine as admin COPY --from=builder /admin/dist/admin-panel /usr/share/nginx/html и такой вот композ: version: "3" services: admin: container_name: admin image: admin build: context: . dockerfile: Dockerfile expose: - "{{admin_port}}" ports: ['{{admin_port}}:{{admin_port}}'] volumes: ['.:/admin'] restart: on-failure Всё запускается, в хостовом nginx делаю прокси на 127,0,0,1 порт контейнера а в ответ пусто, 500. docker logs admin- пусто, ничего не показывает. ЧЯДНТ?
Anonymous
Народ, подскажите пожалуйста: Задача - простенькое ноджиес приложение в докере, его задача - запустить билд, нода сбилдила, появилась папка с файлами в контейнере. Её надо как-то раздавать. Я пришёл к тому, что раздавать надо nginx, который тоже в докере, и на него будет натравлен nginx который на хосте, с LE и прочим. написал вот такой докер-файл: FROM node:11 as builder COPY . /admin WORKDIR /admin RUN npm install RUN npm install -g @angular/cli RUN ng build --prod FROM nginx-alpine as admin COPY --from=builder /admin/dist/admin-panel /usr/share/nginx/html и такой вот композ: version: "3" services: admin: container_name: admin image: admin build: context: . dockerfile: Dockerfile expose: - "{{admin_port}}" ports: ['{{admin_port}}:{{admin_port}}'] volumes: ['.:/admin'] restart: on-failure Всё запускается, в хостовом nginx делаю прокси на 127,0,0,1 порт контейнера а в ответ пусто, 500. docker logs admin- пусто, ничего не показывает. ЧЯДНТ?
Мы построим тебе nginx на nginx, чтобы ты мог проксировать пока проксируешь? Почему бы не сделать просто EXPOSE 80 или на каком там порту оно работает?
Udjin
ну понимаешь, у меня после билда - появляются файлы. Там нет демона никакого, статика одна. Эту статику надо раздать. Я и подумал туда nginx впилить и на него натравить хостовый
Udjin
или ты предлагаешь статику копировать из контейнера на хост?
Anonymous
Что ты имеешь ввиду под раздать
Udjin
чтоб я в браузере адрес набрал и открылся index.html
Udjin
который из этой статики которая сбилдилась в контейнере
Anonymous
Окей, этот адрес идет на каком-то прту
Anonymous
80 скорее всего
Udjin
огась
Anonymous
Вписываешь в Dockerfile EXPOSE 80
Anonymous
Получаешь свой index.html на IP хоста:80
Udjin
хм, к такому меня жизнь не готовила, щас попробую
George
Anonymous
не работает так
Раньше работало
George
да епрст. EXPOSE - это аннотация. Либо его использует куб (в определенных случаях), либо когда ты делаешь docker run ... -P (именно заглавная), либо он бесполезен
George
скорее это напоминание самому себе, что сервис на 80-м порту.
George
@Agumilev
Andrey
))))
Andrey
Буду каждый раз рублик в копилку класть ,когда этот встаёт...
Andrey
Как 100 накопится сфотаю
Udjin
не работает так
так мне как делать?) писать этот expose или нет?
Andrey
Почему сложно Читать....ну зачем писать и использовать если не понимаешь для чего это нужно...
Andrey
так мне как делать?) писать этот expose или нет?
Отстань от него...Ну жен проброс делай -p 80:80 или на что нужно и с какого угодно у тя 65к выбора
Alex
наехали на человека просто сказали бы что EXPOSE 3000 например это просто запись-документация не на что не влияющая и порты она не пробрасывает
Anonymous
Andrey
+
Andrey
кроме как -P
George
сделали блин докер, сделали кубер, все сложно, все по-разному, все по-кривому
Anonymous
Нахера в Dockerfile вообще команды-документацию добавлять, мол, какой смысл
Alex
что бы знать на каком порту приложение работает - для тех кто читает докерфайл