Ильдар
https://stackoverflow.com/a/34392052
Alex
https://stackoverflow.com/a/34392052
да - спасибо - проверил - команда будет docker build -f deploy/stage/frontend/dockerfile .
Ильдар
Пожалуйста.
Ильдар
Задавай плз вопросы развёрнуто. Что сделал, что ожидал, что пошло не так, как ты думал. И главное - чего ты на самом деле хотел.
🇺🇦Sviatoslav
docker build --target
пасиб, помогло)
Sergey
ещё не решил ?
Заработало. Оказывается и правда был косяк с файловой системой. Помогла переустановка виртуалки
Artur
как глобально то сразу. реинсталом. можеже было починить фс
Sergey
Повезло что только начали настраивать машинки, еще не в проде. Поэтому этот вариант проще показался
Dave
я дурак, поясните плз
Dave
Dave
-v /var/lib/openproject/pg:/var/lib/postgresql/ \
Dave
папка 9.6 создалась
Dave
а содержимого нет
Dave
внутри контейнера есть
Dave
а вне нету
George
Потому что пропагейшен rprivate?
George
Читайте доку
Sobir
как можно посмотреть все все image в private registry?
倫太郎
@Atassis
Ilya
Коллеги, вынес билд сервиса из докер-компоуза в отдельный аймадж, престал работать порт. Чего может не хватать? Такой конфиг был: services: db: build: tests/api/containers/postgres restart: always expose: - "5432" networks: app_net: ipv4_address: 192.168.100.15 и все работало. В самом докерфайле поверх postgres только путь к файлу с дампом прописываю. Заменил это на билд аймаджа и собственно конфиг: db: image: api-test:latest restart: always ... И билжу docker build -t api-test -f tests/api/containers/test/Dockerfile . И другие сервисы перестали видеть бд. Попробовал добавить порт в EXPOSE в сам докерфайл - не помогло
Vladimir
Сча
Ilya
Я через компоуз запускаю
Vladimir
У тебя приложения, тоже в docker? Как обращаешся к docker?
Vladimir
Покаж весь композ
Ilya
version: '3' services: db: image: api-test:latest restart: always expose: - "5432" environment: POSTGRES_USER: ********* POSTGRES_PASSWORD: ********* POSTGRES_DB: ********* networks: app_net: ipv4_address: 192.168.100.15 test: build: dockerfile: tests/api/containers/test/Dockerfile context: . ports: - "8080:443" depends_on: - "db" networks: app_net: ipv4_address: 192.168.100.2 start_dependencies: image: dadarek/wait-for-dependencies depends_on: - db command: 192.168.100.15:5432 networks: app_net: ipv4_address: 192.168.100.3 networks: app_net: ipam: driver: default config: - subnet: "192.168.100.0/24"
Vladimir
А что в логах контейнера db?
lm
Вот выше посмотрел на конфиг и вопрос. А зачем указывают subnet? Не все ли равно какой ip внутри контейнера?
Radzhab
Коллеги, подскажите как собрать образ с докером
Radzhab
допустим есть официальный реп
Radzhab
как его распаковать и посмотреть что там внутри)
Ильдар
Уточни вопрос) эти три предложения никак не связаны между собой.
Dmitry
Привет. Кто-нибудь может посоветовать утилиту для отслеживания изменений в коде и перезапуска контейнеров во время разработки?
Денис
hot rebuild?)
Sergey
Денис
gitlab-ci + docker compose
Sergey
gitlab-ci + docker compose
ну или gitlab ci + ansible docker
Dmitry
ну тебе нужен ci\cd pipeline, на старт сборки по мержу в мастер а потом деплой новых образов
Во время разработки. Я же не буду мёрджить в master каждую мелочь?
Денис
Можно настроить на любую ветку или тэг
Денис
Или на любой коммит вообще
Sergey
Во время разработки. Я же не буду мёрджить в master каждую мелочь?
ну гит тебе точно нужен а мерж или не мерж разницы никакой
Dmitry
Есть какое-нибудь решение не связанное с git? Я веду разработку, во время неё мне нужно иметь доступ к результату. Я бы не хотел коммитить код, результат работы которого я не вижу и не могу протестировать.
Dmitry
😸
Sergey
разработай, получи результат
Sergey
запуш и сделай себе образ
Sergey
нафига напрямую в докере то разрабатывать
Sergey
ты хочешь странного если тебе после каждого переписывания двух строк кода надо ребилдить образ чтобы проверить результат
Dmitry
В разных проектах используются разные сервисы, пакеты, библиотеки. К тому же, многое завязано на взаимодействии сервисов. Разворачивать для каждого проекта стек этих компонентов локально будет проблематично. Эффективнее разрабатывать приложения в контейнерах, это удобно и в таком случае они по определению всегда готовы к деплою и будут работать так, как это было запланировано.
Dmitry
https://medium.com/travis-on-docker/why-and-how-to-use-docker-for-development-a156c1de3b24
Dmitry
> Я веду разработку, во время неё мне нужно иметь доступ к результату. Я бы не хотел коммитить код, результат работы которого я не вижу и не могу протестировать.
Dmitry
Ну, такое себе решение. Много лишних действий, затрудняет разрабоку. У многих инструментов, которыми я пользовался, есть режим отслеживания изменений и перезапуска. Я хочу узнать, работал ли кто-нибудь с чем-то подобным для Docker?
Dmitry
https://medium.com/lucjuggery/docker-in-development-with-nodemon-d500366e74df
Dmitry
Советуют использовать volumes для возможности влиять на работу контейнеров через локальные правки.
Sergey
Советуют использовать volumes для возможности влиять на работу контейнеров через локальные правки.
не, это то понятно что ты вольюм можешь пробросить и рестартить контейнеры
Ильдар
Ты подробнее кейс расскажи. У всех разработка, да разная.
Dmitry
Ты подробнее кейс расскажи. У всех разработка, да разная.
Я говорю об общих вещах. Нужна утилита, которая будет отслеживать изменения в файлах, на которых строится образ, и перезапускать контейнер. Желательно в связке в docker-compose. В своём проекте я использую mariadb, flask + uwsgi, nginx.
Sergey
Советуют использовать volumes для возможности влиять на работу контейнеров через локальные правки.
Если у тебя программа интерпритируемая - вполне норм. Если компилируемая - скорее всего будет свой образ для инкрементной сборки.
Sergey
А так по аналогии с nodemon для nodejs
Маfеt
всем привет. подскажите плз, как отучить докер добавлять правило в nat цепочку с dnat порта?
Маfеt
то есть я хочу ограничить доступ с определенных сетей к порту
Sergey
Но перезапускать прям контейнер - дико неудобно и медленно
Маfеt
а не открывать на весь инет
Dmitry
Если у тебя программа интерпритируемая - вполне норм. Если компилируемая - скорее всего будет свой образ для инкрементной сборки.
Да, в этом проблема. Ещё некоторые сервисы не различают изменения в файлах - uwsgi будет хостить приложение со старой логикой до перезапуска, если не ошибаюсь.
Radzhab
подскажите плиз
Radzhab
volumes: - mongo:/data/db
Radzhab
что значит эта строка?
Radzhab
я понимаю то что волюмы и прочее
Radzhab
- mongo
Radzhab
это путь или что )?
Radzhab
mongo: image: mongo restart: unless-stopped volumes: - mongo:/data/db ports: - 127.0.0.1:27017:27017
Radzhab
я хочу найти место где докер хранит файлы монго
Radzhab
но че т туплю
Radzhab
эт понятно