docker - 如何为两个在彼此之间转发和请求的容器创建docker-compose?

标签 docker docker-compose

我有2个容器,其中一个是Web应用程序(web-app),另一个是身份验证Web应用程序(auth-app)。
我转到网络应用程序并转发到身份验证应用程序,身份验证应用程序会将我转发回到网络应用程序。然后,网络应用将向身份验证应用发送另一个请求以进行验证。
我尝试设置别名(网络应用程序,身份验证应用程序),但是当网络应用程序转发我时,我得到主机无法识别的“https:// auth-app:8443 / ...”。
有没有办法通过docker-compose做到这一点?
撰写文件:

version: '3'
services:
  auth-app:
    image: auth-app:1
    ports:
      - "8080:8080"
      - "8443:8443"
    networks:
      thenetwork:
        aliases:
            - auth-app
  web-app:
    image: web-app:1
    ports:
      - "8282:8080"
      - "8445:8443"
    networks:
      thenetwork:
        aliases:
            - web-app
networks:
    thenetwork:
        driver: bridge

最佳答案

由于您的应用程序似乎需要通过后端以及前端上的相同URL进行通信,因此我想说的是使用主机的实际主机名或IP,而不是localhost。当应用程序在前端重定向时,Localhost将起作用,但是在后端重定向时,本地主机将引用尝试进行重定向的容器。

关于docker - 如何为两个在彼此之间转发和请求的容器创建docker-compose?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63871872/

相关文章:

linux - 添加具有较大用户 ID/UID 值的用户时 Docker 构建挂起

amazon-web-services - 将 Docker Compose 应用程序持续部署到 AWS/EC2

mysql - docker-compose 中的命令行参数

mysql - 在docker compose中flask无法连接mysql

docker-compose 在 docker-compose.yml 中看不到卷的变化

docker - 使用环境变量构建 docker 镜像

jenkins - 在Jenkins Shell中运行Docker命令

docker - docker1.7来自守护程序的错误响应:无法启动容器:无效参数

docker - 在 docker 中的链接容器上执行二进制文件

php - Docker compose 命令没有这样的文件