postgresql - 如何设置docker架构

标签 postgresql nginx deployment docker

我想要以下配置:

               Docker Containers   

||||||||||||      ||||||||||||      ||||||||||||
|          |      |          |      |          |
|          |      |          |      |          |
|          | <--> |          | <--> |          |
|          |      |          |      |          |
|          |      |          |      |          |
||||||||||||      ||||||||||||      ||||||||||||
   nginx           web server         postgres

使用以下设置:

  1. Nginx

    • 更改nginx.conf
    • 添加适当的sites-available条目
    • 链接配置站点启用
  2. PostgreSQL

    • 设置用户登录名和密码
  3. 网络服务器

    • 从存储库克隆
    • 构建发布版本
    • 运行服务器进程

我也有几个问题:

a) 如何将 API key 、密码等 secret 传递给 Docker?

b) 是否可以从 docker 克隆 repo 或者有其他方法可以做到这一点?

c) 如何以及在何处部署此类应用程序?

d) 这种设置是否可行?

最佳答案

这种设置在 docker 中很常见。我建议您考虑使用 docker-compose ( example),因为它可以大大简化设置。

secret 的传递是在 docker 运行时通过环境变量完成的。如果你有很多,你可以将它们存储在一个 env 文件中。

是的,您可以从 docker 容器或在 docker 构建期间克隆一个 repo。在 docker build 期间克隆私有(private) repo 目前是不可行的(在不暴露您的凭据的情况下),因此通常建议在运行 docker build 之前克隆您的 repo。

关于postgresql - 如何设置docker架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31304222/

相关文章:

PostgreSQL(创建表)

ruby-on-rails - Heroku] 处理数据库

docker - Windows 主机上 Linux 容器的卷

node.js - 如何使用 node.js 保护单页应用程序中的静态文件

asp.net - 部署已发布的代码?

sql - 我怎样才能快速删除 postgres 中的行?

linux - 如何设置虚拟主机以使用 nginx 自动索引文件

php - Jenkins 在部署时创建文件而不是符号链接(symbolic link)

image - 如何删除 kubernetes 中的部署/镜像

django - "error readlink/var/lib/docker/overlay2 invalid argument"当我运行 docker-compose up