可以从邮政编码上运行docker上的访问应用程序
我创建了一个连接到PostgreSQL的Spring Boot项目。 运行项目并从我的IDE连接时,我在Docker中安装的PostgreSQL工作正常。
我在Windows 11上使用Docker Desktop版本4.6.1,并且在启动Docker时遇到了两个问题。
首先:
docker run --name myapp --network=host -d 220d023bd426
对于上面的命令,应用程序正在启动,但是我无法像Postman这样的外部访问它,然后我尝试
docker exec -it 099583cc05b6 /bin/bash
使用卷曲来测试它的工作。
第二:
docker run --name myapp -p 8181:8080 -d 220d023bd426
对于上面的命令,它显示了一个错误:
org.postgresql.util.util.psqlexception:连接到127.0.0.1:6543被拒绝。检查主机名和端口是否正确,并且邮政局长接受TCP/IP
I have created a Spring Boot project connected to PostgreSQL.
When running the project and connecting from my IDE, the PostgreSQL I installed within Docker is working fine.
I use Docker Desktop version 4.6.1 on Windows 11, and I have faced two problems when starting docker.
First:
docker run --name myapp --network=host -d 220d023bd426
For the command above, the application is starting, but I can't access it from the outside like Postman, then I try
docker exec -it 099583cc05b6 /bin/bash
and use curl to test it works.
Second:
docker run --name myapp -p 8181:8080 -d 220d023bd426
For command above, it shows an error:
org.postgresql.util.PSQLException: Connection to 127.0.0.1:6543 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您还需要将
- Network = host
也添加到第二个命令中,否则它将尝试连接到容器的127.0.0.1。但是,请确保您了解什么 network = host
You need to add the
--network=host
to the second command as well, otherwise it is trying to connect to the 127.0.0.1 of the container.But please make sure you understand what network=host means