如何从另一个容器连接到服务?

尼古拉·波多尼(Nikolay Podolnyy)

嗨,我有2个单独的项目,分别是docker-compose-ABProjectB有它自己的Redis,我想BA项目连接到此Redis 我该怎么做呢?

在线

您可以使用预先存在的网络

如果要让容器加入现有网络,请使用外部选项

样本文件夹结构:

shubuntu1@shubuntu1:~/cc$ ls
prj1  prj2
shubuntu1@shubuntu1:~/cc$ tree
.
├── prj1
│   └── docker-compose.yaml
└── prj2
    └── docker-compose.yaml

2 directories, 2 files

prj1 / docker-compose.yaml:

version: '3.4'

services:
  service_1:
    image: alpine
    tty: true

prj2 / docker-compose.yaml:

version: '3.4'

services:
  service_2:
    image: alpine
    tty: true

networks:
  default:
    external:
      name: prj1_default

检查容器是否可以互相访问:

shubuntu1@shubuntu1:~/cc/prj2$ docker exec -it prj2_service_2_1 ping service_1
PING service_1 (192.168.192.2): 56 data bytes
64 bytes from 192.168.192.2: seq=0 ttl=64 time=0.050 ms
64 bytes from 192.168.192.2: seq=1 ttl=64 time=0.148 ms
64 bytes from 192.168.192.2: seq=2 ttl=64 time=0.161 ms

您可以通过第一个docker-compose.yaml看到它会为此组合生成一个网络,这里是prj1_default,它取决于找到第一个docker-compose.yaml的文件夹名称(prj1)。

然后,在第二个docker-compose.yaml中,仅将第一个网络用作默认网络。这样,由两个不同的docker-compose.yaml生成的容器可以位于同一网络中,因此它们可以相互访问。然后,根据您的情况,prjB可以访问prjA的redis。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从另一个容器中的服务连接到Rabbitmq Docker容器

Docker容器未连接到服务器上的另一个Docker容器

如何从另一个容器连接到SQL Sever docker容器?

如何从另一个容器应用程序作为docker映像连接到mongodb

如何从连接到外部网络的另一个组合访问容器?

如何从ubuntu连接到另一个系统中的mysql服务器

从一个Docker容器连接到另一个

从 docker compose 启动的容器无法连接到另一个容器

无法从另一个容器连接到Postgres容器

使用相同名称从另一个容器或主机连接到容器

使用另一个容器连接到 MongoDB docker 容器的问题

连接到另一个运行MariaDB的Docker容器时,MYSQLI连接被拒绝

无法从Docker容器连接到另一个。拒绝连接

通过另一个不相关的容器连接到一个 Mariadb 容器

docker 容器中的服务器无法连接到另一个 docker 容器中的 postgres 数据库

无法从另一个Docker容器连接到Redis

从Docker中的另一个容器连接到Redis

使用Docker compose连接到另一个容器

Azure kubernates:将位于另一个子网中的 VM 连接到容器

Docker容器无法使用Docker网络连接到另一个

从本地另一个容器中连接到Docker化的REST JaxRS端点

通过另一个VPN服务器连接到VPN服务器

如何连接到另一个终端的一个终端的输出?

如何将一个SQL SELECT语句连接到另一个?

如何将一个查询的结果连接到另一个查询

尝试从另一个容器连接到RabbitMQ时,为什么会收到一个“ IncompatibleProtocolError”?

如何使用连接到本地机器上的另一个服务的 docker-compose 连接到数据库(redash & mysql & python_script)

Docker 容器无法连接到我知道正在运行的另一个容器

将使用docker-compose创建的容器连接到使用docker run创建的另一个容器