首页 > 解决方案 > 在其他 docker 容器中访问网络

问题描述

我有两个码头集装箱。第一个有一个连接多个客户端的 OpenVPN 服务器。现在我想通过 VPN 从另一个容器访问其中一个客户端(例如使用一个简单的ping命令)。那可能吗?

目前我以这种方式链接容器:

version: '3'
services:

  app:
    build:
      context: .
      dockerfile: app.dockerfile
    links:
      - ovpn:ovpn

  ovpn:
    build:
      context: .
      dockerfile: ovpn.dockerfile
    working_dir: /etc/openvpn
    privileged: true
    volumes:
      - ./openvpn:/etc/openvpn
    ports:
      - 1194:1194/udp

我也尝试使用新networks密钥(docker compose version 3.5),但这也不起作用。

我认为我的方法是没有用的,因为链接和网络密钥只是为了使容器本身可以访问。但我希望还有另一种可能。

标签: dockernetworkingdocker-compose

解决方案


对的,这是可能的。理论上,两个容器都在同一个网络中。


推荐阅读