Docker Compose и Spring Boot 3.1

Наверняка вам приходилось запускать разрабатываемое приложение для какого-то ручного тестирования разрабатываемых функций. А для этого, как правило, нужно некоторое окружение: базы данных, серверы кэша, брокеры очередей сообщений и т.д.
И чтобы не разворачивать это всё вручную, можно использовать контейнеры, а разработчики Spring Boot предлагают интеграцию Spring Boot и Docker Compose, благодаря которой использование контейнеров требует минимум кода.
📖 Читать на сайте alexkosarev.name/2023/06/05/d...
📖 Читать в VK @shurik.codes-docker-c...
📖 Читать в Telegraph telegra.ph/Docker-Compose-i-T...
#java #docker #springboot #dockercompose
Мой сайт: alexkosarev.name/
Паблик в VK: public218833461
Канал в Telegram:t.me/+TZCuO38vG3oqu_Jq
Стать доном: donut/shurik.codes
Донаты в Boosty: boosty.to/akosarev/purchase/1...
Донаты в Tinkoff: www.tinkoff.ru/cf/4PEOiVCZQuS

Пікірлер: 27

  • @dartRichard
    @dartRichard10 күн бұрын

    Мега полезная информация. Только учусь и сразу при сборке выбирал Docker Compose - но не понимал механизм =) Спасибо

  • @user-fl4yw1cr7d
    @user-fl4yw1cr7d11 ай бұрын

    Круто, нравится подача. Продолжайте

  • @paradiesd
    @paradiesd11 ай бұрын

    Все круто, спасибо

  • @levaryazan
    @levaryazan5 ай бұрын

    Саша, спасибо вам за потрясающие видео. Вы выбрали отличный формат, когда показываете связки кода, которые максимально приближены к реальным, а не абстрактные сценарии. Получается очень круто! Единственное маленькое замечание - вы отлично владеете горячими клавишами Идеи. Поставьте плагин Presentation Assistant, он будет показывать комбинации клавиш, которые вы нажимаете. Это тоже бывает очень интересно и ценно.

  • @shurik_codes

    @shurik_codes

    5 ай бұрын

    Учту)

  • @abobu63
    @abobu6311 ай бұрын

    спасибо большое!! оч классно!

  • @vik11111
    @vik111119 ай бұрын

    Супер, спасибо

  • @PS-pv8sr
    @PS-pv8sr11 ай бұрын

    Спасибо за очень интересное видео! Хотелось бы подробнее узнать как писать микросервисы и связывать их между собой.

  • @MrVitalirapalis
    @MrVitalirapalis11 ай бұрын

    Часто использую тест контейнеры для интеграционных тестов например запустить постгрес, еластиксеарч и прочие. И вся время в голове крутился вопрос почему нету интеграции не только для написания тестов но и для локальной разработки, приходилось в ручную или при помощи экстерных мавен/градле плугинов запускать докер/композе, теперь она появилась "нативная" от спринг и докер композе. Команда спринга рулит буду использовать при необходимости, спасибо.

  • @d-rban
    @d-rban11 ай бұрын

    Спасибо!

  • @Henverx
    @HenverxАй бұрын

    В схеме можно перед вставкой данных написать "IF NOT EXISTS create ....", таким образом можно оставить init mode always и если таблицы уже есть, они не создадутся и приложение тем самым не вылетит с ошибкой

  • @user-sn9rj1dn1b
    @user-sn9rj1dn1b2 ай бұрын

    Кайф просто🧠🔥

  • @user-by4gw7nz6m
    @user-by4gw7nz6m11 ай бұрын

    а для gradle не подскажите какая настройка должна быть где посмотреть ?

  • @romanovichihin2429
    @romanovichihin24299 ай бұрын

    Лайк, коммент, некст!

  • @vik11111
    @vik111119 ай бұрын

    Подниму вопрос выше по ветке, а то потерялся. А что значит приставка в c_username и t_user ? Спасибо)

  • @shurik_codes

    @shurik_codes

    9 ай бұрын

    Это префиксы структур: c_ - обычная колонка, id_ - внешний или первичный ключ, t_ - таблица, v_ - вьюха и т.д. Для удобства

  • @vik11111

    @vik11111

    9 ай бұрын

    @@shurik_codes спасибо) 🥰

  • @rainrainov4495
    @rainrainov44952 ай бұрын

    А как установить версию контейнера в одном месте. Чтобы и в тестовом контейнере для интеграционного тестирования и в тестовом контейнере для ручных тестов и в docker compose файле применялась одна и та же версия контроллера. Чтобы не менять версии в нескольких местах.

  • @shurik_codes

    @shurik_codes

    2 ай бұрын

    Не думаю, что есть какие-то стандартные решения. Но можно попробовать переменные окружения, либо создавать собственный тег у нужного образа. Но это нужно будет сначала конкретную версию образа скачать.

  • @rainrainov4495

    @rainrainov4495

    2 ай бұрын

    @@shurik_codes спасибо за ответ. Да что-то стандартного решения не нашел. Хотя кажется логическим, зачем указывать версии в нескольких местах. Ведь тестировать на той же версии что и в продакшн логично. Возможно позже добавят.

  • @hurricane-rus
    @hurricane-rus2 ай бұрын

    А сайт со статьей работает? Не могу подключиться - соединение падает по таймауту

  • @shurik_codes

    @shurik_codes

    2 ай бұрын

    Сайт временно недоступен

  • @psevdonim_youtube147
    @psevdonim_youtube14711 ай бұрын

    почему jdbc, а не spring data ?

  • @shurik_codes

    @shurik_codes

    11 ай бұрын

    Потому что я так захотел)

  • @user-ub5yg5sf6z
    @user-ub5yg5sf6z7 ай бұрын

    spring.docker.compose.lifecycle-management=start_and_stop - не останавливает контейнер у меня

  • @shurik_codes

    @shurik_codes

    7 ай бұрын

    Но вообще должно. Каким образом запускается контейнер? И что за контейнер?

  • @trymad693

    @trymad693

    6 ай бұрын

    @@shurik_codes Аналогичная проблема. В моем случае у меня описано 2 контейнера: postgres и pgadmin, у каждого переброшены порты и прописаны volumes. Так же указал в application.yml файле значение start_and_stop, и контейнеры создаются и запускаются вместе с приложением, но не выключаются если завершить само приложение.

Келесі