spring - 如何连接两个 docker 容器
问题描述
我有一个运行 PostgreSQL 的 Docker 容器,它运行良好,因为我可以从 IntelliJ 连接到它。在另一个容器中,我有一个基于 GRPC 的应用程序,每次我尝试运行它时它都会立即崩溃,因为它需要连接到另一个容器中运行的 Postgres 数据库。
我已经尝试发布两个容器的端口,但没有任何帮助...我什至遇到错误,因为我试图将两个容器映射到相同的端口,因为应用程序连接到它运行的端口上的 postgres,该端口是 5432 by默认(我没有改变这个)。
我想知道您如何连接两个容器,以便我的应用程序可以访问数据库并测试 GRPC 请求。
提前致谢
解决方案
使app容器在5432端口上运行并将其暴露给任何端口并使postgres容器在任何端口上运行并暴露5432端口
docker run -p xxx:5432 yourapp
docker run -p 5432:yyy postgres
需要确保 postgres 在yyy端口的容器内运行
推荐阅读
- java - java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“double java.lang.Double.doubleValue()”
- laravel - 带变量的 PHP 字符串
- java - Eclipse Helios 支持哪个版本的 Java?
- c# - 如何在 WPF C# 中解析 json 数据?
- mysql - MySQL:优化分区以加快请求
- c++ - 如何使用 SFINAE 检测 noexcept 方法
- html - 页面跳转到部分中间?
- kubernetes - Kubernetes:为什么需要 2 个以上的节点?
- java - 我们可以从 java 中的另一个类更改 JLabel 吗?
- java - 如何从 Android 设备中的 Firestore 获取服务器时间戳?