Akkahttp dockering问题(仅限撰写)



我有一个带数据库连接的akka-http简单应用程序,为了将其码头化,我使用sbt原生打包程序插件。如果我运行类似的数据库

docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres

和应用程序:

docker run -p 8080:8080 --network="host" --rm my-system-backend:0.1

一切都很好,我可以发出curl请求,应用程序正在进行适当的DB调用等。但当我使用docker撰写时,它不起作用,我有错误:

curl:(56(Recv故障:对等重置连接

version: '3'
services:
backend:
image: my-system-backend:0.1
environment:
DB_URL: "jdbc:postgresql://database:5432/db"
ports:
- 8080:8080
depends_on:
- database
database:
image: postgres:13
ports:
- 5432:5432
environment:
POSTGRES_USERNAME: "postgres"
POSTGRES_PASSWORD: "postgres"
POSTGRES_DB: "db"
volumes:
- ./databasedata:/var/lib/postgresql/data/

build.sbt的一部分:

lazy val root = (project in file("."))
.configs(IntegrationTest)
.settings(
Defaults.itSettings,
libraryDependencies ++= ...,
dockerExposedPorts ++= Seq(8080)
)
.enablePlugins(FlywayPlugin, JavaAppPackaging)

有什么想法为什么不起作用吗?

好的,我明白了,我错过了:docker组成文件中的network_mode: "host"

最新更新