spring: // Mysql RDS 설정 관련 datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: ${DB_URL} username: ${DB_USER} password: ${DB_PASSWORD} // 데이터베이스 버전 관리 flyway: enabled: true baseline-on-migrate: true locations: classpath:db/migration, classpath:db/seed // DDL - migration, seed 데이터 // JPA 설정 jpa: open-in-view: false hibernate: ddl-auto: validate //Flyway로 관리하므로 naming.physical-strategy: org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy database-platform: org.hibernate.dialect.MySQL8Dialect servlet: multipart: maxFileSize: 5MB maxRequestSize: 5MB // 스웨거 문서 설정 springdoc: swagger-ui: path: /swagger-monthsub.html tagsSorter: alpha operationsSorter: alpha // 정렬기준 oauth: client-secret: server: servlet: encoding: charset: UTF-8 enabled: true force: true port: ${PORT:8080} //기본은 8080이며 env에 port를 적으면 그 번호로 동작함. forward-headers-strategy: framework // 스웨거에서 TEST할 때 HTTP 환경이면 HTTP로 HTTPS면 HTTPS로 포워딩 // AWS 설정 cloud: aws: credentials: accessKey: ${IAM_ACCESS_KEY} secretKey: ${IAM_SECRET_KEY} s3: imageBucket: monthsub-image # videoBucket: monthsub-video domain: https://monthsub-image.s3.ap-northeast-2.amazonaws.com region: static: ap-northeast-2 stack: auto: false //씨큐리티 security: jwt: //JWT 토큰 사용 header: authorization //헤더에 authorization 안에 토큰을 넣어줘야함. issuer: monthsub // 작성자 client-secret: ${JWT_CLIENT_SECRET} expiry-seconds: 86400 //1일 cors: origin: // 허용 도메인 - http://localhost:3000 - http://127.0.0.1:3000 - https://monthsub.netlify.app allows: // 허용 엔드포인트 get: - /assets/** - /h2-console/** - /v3/api-docs/** - /swagger-monthsub.html - /swagger-ui/** # endpoint - /health - /main - /series - /series/sort - /series/{id} - /series/search/title - /series/search/nickname - /users/{id}/other post: - /users/login - /users/signup // 로컬 로그는 INFO 레벨까지 찍힘 logging: level: com.prgrms: INFO