【问题标题】:Akka http dockering issue ( in compose only )Akka http dockering 问题(仅在撰写中)
【发布时间】:2020-09-01 19:04:21
【问题描述】:

我有一个带有 db 连接的 akka http 简单应用程序,我使用 sbt native packager 插件对其进行 dockerize。 如果我像这样运行数据库:

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 请求,应用程序正在进行适当的数据库调用等。 但是当我使用 docker-compose 时它不起作用,然后我有错误:

curl: (56) Recv failure: Connection reset by peer

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)

任何想法为什么这不起作用?

【问题讨论】:

    标签: scala docker akka-http


    【解决方案1】:

    好的,我明白了,我错过了:network_mode: "host" 在 docker-compose 文件中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-01
      • 1970-01-01
      • 2020-09-24
      • 2011-02-26
      • 2021-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多