Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Docker MySQL - không thể kết nối từ ứng dụng Spring Boot với cơ sở dữ liệu MySQL

Hãy thử docker-compose.yml này :

version: '3'
services:
  workaround-mysql:
    container_name: workaround-mysql
    image: mysql
    environment:
      MYSQL_DATABASE: workaround
      MYSQL_USER: springuser
      MYSQL_PASSWORD: admin
      MYSQL_ROOT_PASSWORD: admin
      MYSQL_ROOT_HOST: '%'
    ports:
      - "3308:3306"
    restart: always
  workaround:
    depends_on: 
      - workaround-mysql
    restart: always
    # will build ./docker/workaround/Dockerfile
    build: ./docker/workaround
    working_dir: /workaround
    volumes:
      - ./:/workaround
      - ~/.m2:/root/.m2
    expose:
      - "8080"
    command: "mvn clean spring-boot:run"

Và cập nhật application.properties của bạn để sử dụng url kết nối JDBC tiếp theo:

spring.datasource.url=jdbc:mysql://workaround-mysql:3306/workaround?serverTimezone=UTC&max_allowed_packet=15728640

Nó sẽ hoạt động khi cả hai vùng chứa trong cùng một tệp docker-compile, bởi vì docker-compo tạo mạng mặc định cho các vùng chứa, vì vậy chúng có thể phân giải nhau theo tên.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL chuyển đổi đầu ra timediff sang định dạng ngày, giờ, phút, giây

  2. Mật khẩu được chỉ định cho tài khoản người dùng 'root' không hợp lệ hoặc không kết nối được với máy chủ cơ sở dữ liệu

  3. SQL chỉ chọn các hàng có giá trị tối đa trên một cột

  4. Cách sử dụng STRCMP () để so sánh 2 chuỗi trong MySQL

  5. Sử dụng .aggregate () trên một giá trị được giới thiệu bằng .extra (select ={...}) trong Truy vấn Django?