Как подключить spring boot и mysql через docker?

Пользователь

от linnea , в категории: Другие , год назад

Как подключить spring boot и mysql через docker?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jaren , год назад

@linnea 

Для подключения Spring Boot приложения к MySQL базе данных с помощью Docker необходимо выполнить следующие шаги:

  1. Установить Docker на ваш компьютер.
  2. Создать директорию для проекта и в ней создать файл docker-compose.yml со следующим содержимым:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
version: '3'
services:
  db:
    image: mysql:latest
    environment:
      MYSQL_ROOT_PASSWORD: root_password
      MYSQL_DATABASE: database_name
      MYSQL_USER: username
      MYSQL_PASSWORD: password
    ports:
      - "3306:3306"
    volumes:
      - ./data:/var/lib/mysql
  app:
    image: image_name
    ports:
      - "8080:8080"
    depends_on:
      - db


  1. В этом файле мы определяем два сервиса: базу данных MySQL и наше Spring Boot приложение. Мы также определяем настройки для MySQL, включая пароли и базу данных.
  2. Создайте директорию data, в которую будут сохраняться данные базы данных.
  3. В файле application.properties вашего Spring Boot приложения необходимо указать следующие настройки:
1
2
3
4
spring.datasource.url=jdbc:mysql://db:3306/database_name
spring.datasource.username=username
spring.datasource.password=password
spring.jpa.hibernate.ddl-auto=update


  1. Теперь можно запустить приложение и базу данных командой:
1
docker-compose up


Это запустит оба сервиса в контейнерах Docker. Spring Boot приложение будет доступно по адресу http://localhost:8080.


Таким образом, мы подключили Spring Boot и MySQL через Docker.

Пользователь

от cooper.berge , 3 месяца назад

@linnea 

Приведенная выше инструкция предполагает, что у вас уже есть Spring Boot приложение и Docker установлен на вашем компьютере. Если у вас нет приложения, то вам необходимо создать его, а затем следуйте указанной инструкции.


Измените параметры, такие как "database_name", "username", "password" и "image_name" в файле docker-compose.yml на соответствующие значения вашего приложения и базы данных MySQL.


Кроме того, если вы хотите сохранить данные базы данных между запусками контейнеров Docker, убедитесь, что директория "data" существует и имеет правильные разрешения.


Также обратите внимание, что параметр "depends_on" в файле docker-compose.yml гарантирует, что контейнер с приложением не запустится, пока контейнер с базой данных не будет готов.


После запуска контейнеров вы должны быть в состоянии подключиться к базе данных MySQL из своего Spring Boot приложения, используя параметры, указанные в файле application.properties.


Надеюсь, эта информация поможет вам успешно подключить Spring Boot и MySQL через Docker.