泊坞窗暴露链接主办机

问题描述:

我使用的是泊坞窗,compose.yml文件的应用服务和数据库服务:泊坞窗暴露链接主办机

version: '2' 
services: 

    app-service: 
    image: app-image 
    container_name: app-container 
    ports: 
     - "5000:5000" 
    networks: 
     - my-network 
    links: 
     - db-service 

    db-service: 
    image: db-image 
    container_name: db-container 
    ports: 
     - "5432:5432" 
    networks: 
     - my-network 

networks: 
    my-network: 
    driver: bridge 

应用服务使用连接字符串连接到数据库与dB服务为主机:

"User ID=postgres;Password=password;Host=db-service;Port=5432;Database=my-table;Pooling=true;" 

正在运行的应用程序容器上正常工作,但我还需要使用相同的连接字符串从我的主机町访问数据库东北。 (在开发过程中数据库迁移)

  • 我想过添加路由我的主机:
    dB服务 - >本地主机但由于它取决于主机,这不是一个很好的解决方案操作系统。

  • 我试图在连接字符串中使用localhost,因为我的主机连接到数据库容器。但显然,应用程序容器将不再连接。

  • 我也打得四处network_mode设置和网络驱动在撰写文件,但有与没有运气。

如何在容器中使用与我的主机相同的主机名?

只有这样,你可以使用相同的连接字符串为您的应用程序,服务和你的主机将更新您的主机的/etc/hosts文件有:

127.0.0.1 db-service 

(或使用你的,如果你在运行Docker机)

但是这个解决方案可能不是最干净的。 IMO最好不要使用相同的连接字符串。