spring Boot(JDBC)とDocker で「DB接続」を行う(今回はMysqlを採用)
記事としての立ち位置
- 本記事は、Macを使っています。
- とりあえず、動かすことをメインに考えています
1. docker-compose.yml への記述
version: "3"
services:
db:
image: mysql:5.7
restart: always
ports:
- 3317:3317
command: --port 3317
volumes:
- ./sql:/docker-entrypoint-initdb.d
environment:
- MYSQL_ROOT_PASSWORD=「root」で入るためのパスワード
- MYSQL_DATABASE=新しいDBのなまえ
adminer:
image: adminer
restart: always
ports:
- 8000:8000
2, dockerコンテナの起動のコマンド(これでDBが作成される)
docker-compose up -d
確認方法
Docker コマンド
docker-compose exec db bash
mysql> show databases;
3. application.properties に記述する
spring.datasource.url=jdbc:mysql://localhost:3317/{作成をしたDB名}
spring.datasource.username=mysqlにログインをするユーザー名
spring.datasource.password=mysqlにログインをするパスワード
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.initialization-mode=always
spring.jpa.hibernate.ddl-auto=update
※ port番号は適当です!(3317でも良いですし、9999でもOKです)
必須項目
spring.datasource.url=jdbc:mysql://localhost:3317/{作成をしたDB名}
spring.datasource.username=mysqlにログインをするユーザー名
spring.datasource.password=mysqlにログインをするパスワード
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
4. build.gradle ファイルに、ライブラリを追加
implementation("org.springframework.boot:spring-boot-starter-jdbc")
implementation("mysql:mysql-connector-java")
接続完了!! のはず・・・・
- curlなどでデータを挿入してみる (完了方法)