gpt4 book ai didi

docker - 如何引用容器内的非docker IP地址?

转载 作者:行者123 更新时间:2023-12-02 21:13:14 25 4
gpt4 key购买 nike

当使用docker-compose文件时,我可以通过其他容器中的容器名称来引用该容器。

version: '3'
network:
mynet:
external: false
services:
database:
image: mariadb
network:
- mynet
application:
build: .
network:
- mynet

上面的意思是我可以这样引用数据库: database:3306容器内部的 application

有没有办法添加可以以相同方式引用的非docker ip地址?说我的 database服务器不是由docker管理的,但是我想以相同的方式在 application中引用它吗?

我知道 links已过时,但我希望能够执行以下操作:

服务:
应用:
建立:。
链接:
-“127.0.0.10:数据库”

如果没有 links,是否可能发生这种情况?

最佳答案

我通常通过应用程序要查找的环境变量来执行此操作。例如,应用程序代码可以使用称为DATABASE_URL的环境变量,然后只需确保在Docker镜像运行时将其设置为已设置。使用上面的docker-compose.yml文件作为基础,您可以像这样传递数据库url:

version: '3'
network:
mynet:
external: false
services:
database:
image: mariadb
network:
- mynet
application:
build: .
network:
- mynet
environment:
DATABASE_URL: "mysql://username:password@my-database-url:3306"

关于docker - 如何引用容器内的非docker IP地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53051396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com