Docker合成設定の問題
922 ワード
背景
Spring bootとSpring securityを使用してユーザー認証を実現し、Redisをキャッシュサーバとして使用したいと考えています.Springプロジェクトの応用.ymlに対してredis関連設定を行い、以下に示す.
spring:
config:
activate:
on-profile: local
redis:
host: 127.0.0.1
port: 6379
Spring Project Docker-Composeは、Spring Boot環境の統合テストにより、ローカルに問題がないことを確認し、Dockerを使用してSpringプロジェクトとRedisをEC 2サーバに配備します.ymlファイルとredisのdocker-compose.ymlファイルを作成し、コンテナにそれぞれアップロードします.質問する
application.ymlのredis.ホストが認識できないためサーバに配備されたSpringプロジェクトはRedisに接続できません.通常、ipではなくコンテナサービス名が使用されます.
したがってhostとredisサービス、コンテナ名はredisに変更されましたが、問題は解決しませんでした.
の原因となる
SpringプロジェクトとRedisをそれぞれドッキングします.理由はymlに分離した後、Springプロジェクトはサービス名だけでredisが見つからないためかもしれません.
解決する
分離docker-composeymlを1つに結合しdependen onでソートします.接続できない問題は解決しましたが、redisのcustom設定ファイルを使用していないので、Springとredisは一緒にいるべきで、これは最善の方法ではありませんので、優先度を下げてより良い解決策を探すべきです.
Reference
この問題について(Docker合成設定の問題), 我々は、より多くの情報をここで見つけました https://velog.io/@cherish8513/Docker-compose-설정-문제テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol