gpt4 book ai didi

docker - 在一个容器中运行nginx以在另一个容器中代理传递Gitlab

转载 作者:行者123 更新时间:2023-12-02 20:13:29 24 4
gpt4 key购买 nike

我想在不同容器中启用https的同一主机上运行Gitlab,机架式台式机等多种服务。我该如何实现?

最佳答案

您可以通过运行反向代理(nginx或apache)来实现此目的,该代理使用不同的虚拟主机将流量转发到不同的容器。

gitlab.foo.bar     -> gitlab container
racktables.foo.bar -> racktables container
etc

反向代理容器会将端口80和443映射到主机。所有其他容器都不需要端口映射,因为所有流量都通过反向代理。

我认为使此工作最快的方法是使用 jwilder/nginx-proxy。至少对新手非常友好,因为它几乎可以为您自动化。您还可以通过查看容器中生成的配置文件来学习 很多。即使使TLS正常工作也并不复杂,默认情况下,您可以从ssllabs设置A +等级。

我已经将它用于我的爱好项目将近一年了,并且效果很好(使用“让我们加密”)。

当然,您也可以手动配置所有内容,但是要进行很多工作却有很多陷阱。

这样做的真正坏方法是在主机上运行反向代理,并将许多端口从所有容器映射到主机。请不要那样做。

关于docker - 在一个容器中运行nginx以在另一个容器中代理传递Gitlab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45172413/

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