草庐IT

nginx-alpine

全部标签

nginx - 在 Docker Swarm 1.12 访问服务时记录客户端的 "real"IP 地址

我在用户创建的覆盖网络内的DockerSwarm中将nginx容器作为服务运行。两者都使用:dockernetworkcreate--driveroverlayproxydockerservicecreate--nameproxy--networkproxy-p80:80nginx通过浏览器访问nginx站点时,在nginx访问日志中,远程地址记录为10.255...格式化地址,我假设是Swarm负载均衡器地址。问题是如何知道/记录访问站点的最终客户端的地址,而不是负载均衡器的地址。 最佳答案 很好!,大多数人分析nginxacce

django - docker、nginx、django 以及如何提供静态文件

目标:用于生产django网站部署的docker容器集。我在这个过程中的挂断是通常nginx直接为静态文件提供服务...根据我对使用docker的良好架构的理解,您将有一个用于wsgi服务器的容器(可能是gunicorn),一个单独的nginx容器上游服务器配置指向您的gunicorn容器。nginx容器可以在多个gunicorn容器之间进行负载均衡。但这意味着我必须在nginx容器中安装我的django应用程序的静态文件,这似乎是一种不好的做法,因为它的主要目标实际上是负载平衡三个容器是不是更好:nginx、gunicorn和一个用于静态文件的专用静态服务器(可能是nginx或lig

nginx - 自动将 docker 容器附加到 nginx 负载均衡器的上游配置

我正在运行DockerCompose(v2),并部署了一个节点服务(网站)和基于python的api,前面有nginx。我想做的一件事是能够通过添加更多容器来扩展服务。如果我提前知道我将拥有多少个容器,我可以使用对docker提供的容器IP的引用对nginx上游配置进行硬编码。但是,问题是我希望上游nginx配置是动态的,例如如果我添加另一个Docker容器,它只是将容器的位置添加到上游block中的上游IP列表。我的想法是创建一个脚本,当容器发生变化时,该脚本将使用环境变量自动附加上游服务器,但我不确定从哪里开始,也找不到一个好的例子。 最佳答案

php - Docker 中 PHP 和 Apache/httpd 的 Alpine 变体

我正在试验Docker,并希望从本地MAMP堆栈转移到Docker。当然,我偶然发现了官方php:7.0图像,但我也想使用Apache,所以似乎php:7.0-apache是要走的路。但是我看到有一个名为php:7.0-alpine的图像更slim,而Apache也有两个版本,即httpd:2.4和httpd:2.4-alpine.是否有任何建议的组合来使用Apache和PHP(分开或组合)同时仍然具有小图像尺寸?此外,我想知道在哪里可以查看图像中的可用模块,因为我还想使用MariaDB和mod_rewrite,它们可能有更多的依赖项,这些依赖项已被省略以保持较小的大小。有关使用ngi

Nginx 无法从 docker 1.10.1 中的嵌入式 DNS 获取主机

我有几个服务在docker容器中运行,它们前面有一个nginx服务器,所有容器都在同一个docker网络中。在docker1.10之前,我创建了一个dnsmasq容器并在nginx中为其设置了解析器,以便可以从nginx发现我的服务。但是升级到docker1.10.1之后,dnsmasq镜像就不行了。经过一番研究,我尝试使用来自地址127.0.0.11的新“嵌入式dns”(我认为这应该是在docker网络中使用的正确方法)。虽然我可以从nginx容器ping到服务容器,但是nginx一直发回无法解析(3:找不到主机)。然后我尝试使用host命令,我得到了非常困惑的结果:(第一个ip地址

docker - minikube : not able to connect a locally deployed nginx service

我已经在我的ubuntu16.04机器上安装了minikube并启动了一个集群,并带有一条消息“Kubernetes在https://192.168.99.100:443上可用”接下来,我用下面的命令部署了nginx服务>kubectl.sh运行my-nginx--image=nginx--replicas=2--port=80--expose>kubectl.shgetpods-owideNAMEREADYSTATUSRESTARTSAGENODEmy-nginx-2494149703-8jnh41/1Running013m127.0.0.1my-nginx-2494149703-q

nginx - 运行 Nginx Docker 或 cat 日志时无法使用 -lt

我最近拉了一个nginx镜像:dockerpullnginx我可以运行成功,去http://server_name看到“欢迎使用Nginx”页面:dockerrun-d-p80:80nginx但是当我尝试检查日志时:dockerexec6c79549e3eb4f6e5fc06f049b67814ac4560ce2cdd7cc6ae84b44b5ae09a9a05cat/var/log/nginx/access.log它只是挂起并且什么也不输出。与错误日志相同。现在,如果我在同一个文件夹中创建一个test.txt文件并使用dockerexec来(查看)该文件,我可以在没有挂起或任何问题的

nginx - 推送到 Artifactory Docker 存储库时未实现 501

我将Artifactory设置为Docker存储库。我遵循了文档,并且能够成功地从我的虚拟Docker存储库中提取图像。但是,当我尝试将图像推送到本地存储库时,它会失败并出现501NotImplemented错误。这是我的设置:Nginx是反向代理:artifactory.somedomain.com:8085->http://localhost:8081/artifactory/api/docker/docker-local/v2artifactory.somedomain.com:8086->http://localhost:8081/artifactory/api/docker/

nginx - Elastic Beanstalk 上的 WebSockets 与 Docker

目前正在尝试在单个实例上运行的AWSElasticBeanstalk中部署Docker镜像。除了我通过Socket.IO使用的WebSockets之外,这一切都很好。Anotherpost建议删除nginx,但这要么不再可能,要么不再是使用Docker部署的选项。我有一个python脚本可以更改nginx配置以允许WebSocket连接。当我ssh进入实例并运行该脚本时,它可以工作。但是,运行ebextensions时,那部分nginx配置还不存在,所以我无法自动运行此脚本。如果你想自己尝试,我正在尝试部署databench_examples.当您使用ebinit和ebstart部署它

一台主机上的 Docker nginx 多个应用程序

我对如何在同一主机上管理具有多个独立web应用程序的反向代理(nginx)感到困惑。我知道我可以使用https://github.com/jwilder/nginx-proxy并为每个应用程序配置VIRTUAL_HOST但是我将无法在每个应用程序docker-compose.yml中将nginx作为服务可见。我想这样做是因为我想明确定义在生产中运行应用程序所需的所有服务,并在开发中轻松复制它。换句话说:我有两个需要在同一主机上运行的web应用程序,我想在两个应用程序的docker-compose.yml中将nginx定义为服务依赖项,但与两者共享该服务,因为只有一个nginx可以转发端