From 77ce228da13f77ae393331f831e55d43dd4e91e0 Mon Sep 17 00:00:00 2001 From: yrchoi Date: Sun, 4 May 2025 09:55:08 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=84=9C=EB=B2=84=20=EC=8B=A4=ED=96=89?= =?UTF-8?q?=20=EC=98=A4=EB=A5=98=20=ED=95=B4=EA=B2=B0=20#283?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 26 ++++++ logstash/pipelines/logstash.conf | 2 +- src/main/resources/application-local.yml | 71 +++++++++++----- src/main/resources/application-prod.yml | 104 +++++++++++++++++++++++ src/main/resources/application-test.yml | 83 +++++++++++++----- src/main/resources/application.yml | 77 +---------------- 6 files changed, 244 insertions(+), 119 deletions(-) create mode 100644 src/main/resources/application-prod.yml diff --git a/docker-compose.yml b/docker-compose.yml index 7c38753a..86f893dd 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,5 +1,29 @@ version: '3.8' services: + redis: + image: redis:latest + container_name: redis + ports: + - "6379:6379" + healthcheck: + test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ] + interval: 5s + retries: 10 + + rabbitmq: + build: + context: ./ + dockerfile: Dockerfile.rabbitmq + image: rabbitmq:3-management + container_name: rabbitmq + ports: + - "5672:5672" + - "15672:15672" + - "61613:61613" + environment: + RABBITMQ_DEFAULT_USER: ${RABBITMQ_USER} + RABBITMQ_DEFAULT_PASS: ${RABBITMQ_PASSWORD} + es: build: context: ./ @@ -52,5 +76,7 @@ services: - es volumes: + mysql-data: + driver: local es-data: driver: local \ No newline at end of file diff --git a/logstash/pipelines/logstash.conf b/logstash/pipelines/logstash.conf index ac14e3d0..019dd109 100644 --- a/logstash/pipelines/logstash.conf +++ b/logstash/pipelines/logstash.conf @@ -28,7 +28,7 @@ filter { output { elasticsearch { - hosts => ["http://host.docker.internal:9200"] + hosts => ["${ES_HOST}"] index => "${INDEX_NAME}" manage_template => false document_id => "%{id}" diff --git a/src/main/resources/application-local.yml b/src/main/resources/application-local.yml index 1a7be4d5..8e2ca51b 100644 --- a/src/main/resources/application-local.yml +++ b/src/main/resources/application-local.yml @@ -2,29 +2,17 @@ spring: config: import: optional:file:.env.local[.properties] - batch: - job: - enabled: false - jdbc: - initialize-schema: always - schema: classpath:org/springframework/batch/core/schema-mysql.sql - datasource-meta: driver-class-name: com.mysql.cj.jdbc.Driver - jdbc-url: ${DB_URL_META} - username: ${DB_USER_META} - password: ${DB_PASSWORD_META} + jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_META_DB_NAME} + username: ${AWS_RDS_USERNAME} + password: ${AWS_RDS_PASSWORD} datasource-data: driver-class-name: com.mysql.cj.jdbc.Driver - jdbc-url: ${DB_URL_DATA} - username: ${DB_USER_DATA} - password: ${DB_PASSWORD_DATA} - - cloud: - aws: - region: - static: ap-northeast-2 + jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_DB_NAME} + username: ${AWS_RDS_USERNAME} + password: ${AWS_RDS_PASSWORD} jpa: hibernate: @@ -60,10 +48,55 @@ spring: ssl: enabled: ${RABBITMQ_SSL} +data: + redis: + host: ${REDIS_HOST} + port: ${REDIS_PORT} + ssl: + enabled: true + + elasticsearch: + uris: ${ELASTICSEARCH_URIS} + + cache: + type: redis + + rabbitmq: + host: ${RABBITMQ_HOST} + port: ${RABBITMQ_PORT} + username: ${RABBITMQ_USER} + password: ${RABBITMQ_PASSWORD} + ssl: + enabled: true + +jwt: + secret: + key: ${JWT_SECRET_KEY} + +toss: + secret: + key: ${TOSS_SECRET_KEY} + +cloud: + aws: + credentials: + accessKey: ${AWS_ACCESS_KEY} + secretKey: ${AWS_SECRET_KEY} + region: + static: ${AWS_REGION} + s3: + bucket: ${AWS_S3_BUCKET} + presigned-url-expiration: ${AWS_S3_PRESIGNED_EXPIRATION} + +oauth: + kakao: + admin-key: ${KAKAO_ADMIN_KEY} + unlink-uri: https://kapi.kakao.com/v1/user/unlink + redisson: config: singleServerConfig: - address: "redis://localhost:6379" + address: redis://${REDIS_HOST}:${REDIS_PORT} chat: broker: rabbit # or simple diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml new file mode 100644 index 00000000..7a7f7e0a --- /dev/null +++ b/src/main/resources/application-prod.yml @@ -0,0 +1,104 @@ +spring: + config: + import: optional:file:.env.local[.properties] + + datasource-meta: + driver-class-name: com.mysql.cj.jdbc.Driver + jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_META_DB_NAME} + username: ${AWS_RDS_USERNAME} + password: ${AWS_RDS_PASSWORD} + + datasource-data: + driver-class-name: com.mysql.cj.jdbc.Driver + jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_DB_NAME} + username: ${AWS_RDS_USERNAME} + password: ${AWS_RDS_PASSWORD} + + jpa: + hibernate: + ddl-auto: none + properties: + hibernate: + show_sql: true + format_sql: true + use_sql_comments: true + dialect: org.hibernate.dialect.MySQLDialect + + jpa-data: + hibernate: + ddl-auto: none + show-sql: true + + data: + redis: + host: localhost + port: 6379 + + elasticsearch: + uris: ${ELASTICSEARCH_URIS} + + cache: + type: redis + + rabbitmq: + host: ${RABBITMQ_HOST} + port: ${RABBITMQ_PORT} + username: ${RABBITMQ_USER} + password: ${RABBITMQ_PASSWORD} + ssl: + enabled: ${RABBITMQ_SSL} + +data: + redis: + host: ${REDIS_HOST} + port: ${REDIS_PORT} + ssl: + enabled: true + + elasticsearch: + uris: ${ELASTICSEARCH_URIS} + + cache: + type: redis + + rabbitmq: + host: ${RABBITMQ_HOST} + port: ${RABBITMQ_PORT} + username: ${RABBITMQ_USER} + password: ${RABBITMQ_PASSWORD} + ssl: + enabled: true + +jwt: + secret: + key: ${JWT_SECRET_KEY} + +toss: + secret: + key: ${TOSS_SECRET_KEY} + +cloud: + aws: + credentials: + accessKey: ${AWS_ACCESS_KEY} + secretKey: ${AWS_SECRET_KEY} + region: + static: ${AWS_REGION} + s3: + bucket: ${AWS_S3_BUCKET} + presigned-url-expiration: ${AWS_S3_PRESIGNED_EXPIRATION} + +oauth: + kakao: + admin-key: ${KAKAO_ADMIN_KEY} + unlink-uri: https://kapi.kakao.com/v1/user/unlink + +redisson: + config: + singleServerConfig: + address: redis://${REDIS_HOST}:${REDIS_PORT} + +chat: + broker: rabbit # or simple + + diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml index 678a775f..3ed69de6 100644 --- a/src/main/resources/application-test.yml +++ b/src/main/resources/application-test.yml @@ -2,29 +2,17 @@ spring: config: import: optional:file:.env.test[.properties] - batch: - job: - enabled: false - jdbc: - initialize-schema: always - schema: classpath:org/springframework/batch/core/schema-mysql.sql - datasource-meta: driver-class-name: com.mysql.cj.jdbc.Driver - jdbc-url: ${DB_URL_META} - username: ${DB_USER_META} - password: ${DB_PASSWORD_META} + jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_META_DB_NAME} + username: ${AWS_RDS_USERNAME} + password: ${AWS_RDS_PASSWORD} datasource-data: driver-class-name: com.mysql.cj.jdbc.Driver - jdbc-url: ${DB_URL_DATA} - username: ${DB_USER_DATA} - password: ${DB_PASSWORD_DATA} - - cloud: - aws: - region: - static: ap-northeast-2 + jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_DB_NAME} + username: ${AWS_RDS_USERNAME} + password: ${AWS_RDS_PASSWORD} jpa: hibernate: @@ -53,15 +41,64 @@ spring: type: redis rabbitmq: - host: localhost - port: 5672 + host: ${RABBITMQ_HOST} + port: ${RABBITMQ_PORT} + username: ${RABBITMQ_USER} + password: ${RABBITMQ_PASSWORD} + ssl: + enabled: ${RABBITMQ_SSL} + +data: + redis: + host: ${REDIS_HOST} + port: ${REDIS_PORT} + ssl: + enabled: true + + elasticsearch: + uris: ${ELASTICSEARCH_URIS} + + cache: + type: redis + + rabbitmq: + host: ${RABBITMQ_HOST} + port: ${RABBITMQ_PORT} username: ${RABBITMQ_USER} password: ${RABBITMQ_PASSWORD} + ssl: + enabled: true + +jwt: + secret: + key: ${JWT_SECRET_KEY} + +toss: + secret: + key: ${TOSS_SECRET_KEY} + +cloud: + aws: + credentials: + accessKey: ${AWS_ACCESS_KEY} + secretKey: ${AWS_SECRET_KEY} + region: + static: ${AWS_REGION} + s3: + bucket: ${AWS_S3_BUCKET} + presigned-url-expiration: ${AWS_S3_PRESIGNED_EXPIRATION} + +oauth: + kakao: + admin-key: ${KAKAO_ADMIN_KEY} + unlink-uri: https://kapi.kakao.com/v1/user/unlink redisson: - config: | + config: singleServerConfig: - address: "redis://localhost:6379" + address: redis://${REDIS_HOST}:${REDIS_PORT} chat: - broker: rabbit # or simple \ No newline at end of file + broker: rabbit # or simple + + diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 3b8319bd..72d035f6 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -57,79 +57,4 @@ spring: - nickname - email - profile_image - - mobile - - datasource-meta: - driver-class-name: com.mysql.cj.jdbc.Driver - jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_META_DB_NAME} - username: ${AWS_RDS_USERNAME} - password: ${AWS_RDS_PASSWORD} - - datasource-data: - driver-class-name: com.mysql.cj.jdbc.Driver - jdbc-url: jdbc:mysql://${AWS_RDS_HOST}:${AWS_RDS_PORT}/${AWS_RDS_DB_NAME} - username: ${AWS_RDS_USERNAME} - password: ${AWS_RDS_PASSWORD} - - jpa: - hibernate: - ddl-auto: none - properties: - hibernate: - show_sql: true - format_sql: true - use_sql_comments: true - dialect: org.hibernate.dialect.MySQLDialect - - jpa-data: - hibernate: - ddl-auto: none - show-sql: true - - data: - redis: - host: ${REDIS_HOST} - port: ${REDIS_PORT} - ssl: - enabled: true - - elasticsearch: - uris: ${ELASTICSEARCH_URIS} - - cache: - type: redis - - rabbitmq: - host: ${RABBITMQ_HOST} - port: ${RABBITMQ_PORT} - username: ${RABBITMQ_USER} - password: ${RABBITMQ_PASSWORD} - ssl: - enabled: true - -jwt: - secret: - key: ${JWT_SECRET_KEY} - -toss: - secret: - key: ${TOSS_SECRET_KEY} - -cloud: - aws: - credentials: - accessKey: ${AWS_ACCESS_KEY} - secretKey: ${AWS_SECRET_KEY} - region: - static: ${AWS_REGION} - s3: - bucket: ${AWS_S3_BUCKET} - presigned-url-expiration: ${AWS_S3_PRESIGNED_EXPIRATION} - -oauth: - kakao: - admin-key: ${KAKAO_ADMIN_KEY} - unlink-uri: https://kapi.kakao.com/v1/user/unlink - -chat: - broker: rabbit # or simple \ No newline at end of file + - mobile \ No newline at end of file