我们有一个远程的Postgres数据库 (Amazon RDS DB),需要从Docker Django应用程序中访问,我们应该如何连接它?
在这种情况下,我的django-compose.yml文件应该如何编写?
在这种情况下,我的django-compose.yml文件应该如何编写?
django_app:
image: your_image
extra_hosts:
- "database:123.456.78.90"
现在您的Django应用可以使用主机名database
访问数据库。
如果不使用Rancher或Docker Networks和其他工具(例如IPSEC),则无法轻松地链接那些容器。而且通常也不需要这样做。这意味着您将路由/加入两个不同docker主机的2个Docker网络,这实际上是一个庞大的话题。关于此背后的一般理论,请参考https://docs.docker.com/engine/userguide/networking/,如果您需要此功能,请尝试并提出更具体的问题。
低级概念就是简单地使用外部连接,因为你的Docker容器可以无问题地访问外部世界。
您的AWS实例肯定会有一个可外部解析的名称,例如youdb.aws.domain.com,而PostgreSQL服务器则运行在9000端口
所以你所要做的就是用postgresql连接到youdb.aws.domain.com:9000
。