Tag: nginx

Docker与Nginx – https不工作

我对使用Docker比较陌生。 我用Nginx,PHP和Mysql设置了一个Docker容器。 我可以从虚拟机( http://192.168.99.100/ )访问IP,一切正常。 但是,当我转到https://192.168.99.100/时 ,Chrome会放置笑脸,并说ERR_CONNECTION_RESET 如何让Nginx为环境启用SSL证书? 我正在使用Windows 10,而VM使用的是Virtualbox, 而不是 Hyper-V

将函数输出保存到参数中命名的variables中

我有一个有趣的问题,我似乎无法find答案。 我正在创build一个简单的应用程序,它将帮助我的开发部门自动启动具有NginX和configuration文件的Docker容器。 我的问题是,由于某种原因,我不能让bash脚本存储文件夹的名称,同时扫描目录。 这是我正在谈论的一个非常简单的例子…. #!/bin/bash getFolder() { local __myResultFolder=$1 local folder for d in */ ; do $folder=$d done __myResultFolder=$folder return $folder } getFolder FOLDER echo "Using folder: $FOLDER" 然后,我将这个简单的脚本保存为folder_test.sh,并将其放在只有一个文件夹的文件夹中,将所有者更改为我,然后授予它正确的权限。 但是,当我运行脚本,我不断收到错误… ./folder_test.sh: 8 ./folder_test.sh: =test_folder/: not found 我已经尝试把$folder=$d部分在不同types的引号,但没有任何作品。 我试过$folder="'"$d"'" , $folder=`$d` , $folder="$d"但没有任何作品。 让我疯狂,任何帮助将不胜感激。 谢谢。

在Docker运行命令中安装cron任务

我创build了一个用来部署多个网站的alpine / nginx / php-fpm的基础映像。 每个网站都有自己的cron作业。 如何在容器初始化时创build自定义cron作业以启动docker run命令?

Docker nginx无法连接到在单独容器中运行的上游gunicorn

我已经尝试了各种选项,例如docker docker-compose expose , bridge , networks选项,但不能让它与上游gunicorn在单独的容器中运行的nginx连接一起工作,我收到来自nginx的502 Bad Gateway错误。 我不确定我缺less什么。 以下是我的docker-compose文件: version: "3" services: web: build: . container_name: web command: bash -c "/start_web.sh" restart: always depends_on: – worker ports: – "80:80" – "443:443" worker: build: . container_name: worker command: bash -c "/start_worker.sh" restart: always ports: – "8000:8000" nginx conf: upstream worker { server 127.0.0.1:8000; } […]

从docker容器到主机超时的curl请求

我遇到了一个docker问题,我相信这是由于我在dockernetworking方面的知识存在差距。 我有一个运行nginx和php的docker镜像。 必要的端口暴露。 这里是我用来运行图像的简化命令。 docker run –name php-app -p 80:80 php-app 问题是,安装设置,PHP应用程序使用主机公用IPcurl到自己。 举个例子, curl http://105.15.25.120/phpsetup.php?setup 这个IP似乎是从容器内部无法访问的,因为curl超时 curl -vvv 105.15.25.120 About to connect() to 105.15.25.120 port 80 (#0) Trying 105.15.25.120… Connection timed out Failed connect to 105.15.25.120:80; Connection timed out Closing connection 0 curl: (7) Failed connect to 105.15.25.120:80; Connection timed out 我可以成功地从容器内curl到其他IP,而不是主机。 从主机使用curl工作正常,并不会导致任何奇怪的行为。 为了简单和testing,我已经用官方的nginx镜像重现了这个行为,以帮助得出结论,这不是我自己的形象的问题。 docker […]

Docker容器只能在端口80上工作

我在多台机器上(Win10和服务器2016)尝试了这一点,使用本教程的结果相同: https : //docs.docker.com/docker-for-windows/#set-up-tab-completion-in-powershell 这工作 docker run -d -p 80:80 –name webserver nginx 任何其他端口,失败 docker run -d -p 8099:8099 –name webserver nginx –> ERR_EMPTY_RESPONSE 看起来像Docker / Nginx正在监听失败的端口,但失败。 Telneting到这个端口显示请求通过,但立即断开连接。 这与根本没有听到端口的情况不同。

从我的django应用程序容器获取主机IP

我们的networking应用程序有一个function,我们需要发送我们的服务器的IP,但我总是发送172.17.0.2因为这是request.META['REMOTE_ADDR']这通常是127.0.0.1在localhost中使用django的值并且我认为是我们的NGINX容器的TCP地址,其中请求来自于此。 我将如何发送我的docker主机的IP呢? 集装箱: Nginx的 Django与gunicorn PostgreSQL的 Redis的

在Openshift上以非root用户身份运行nginx,并在端口80上侦听

我已经连续几天尝试configuration一个在Openshift上运行的nginx容器,直到现在,它没有得到它的工作。 我已阅读有关使用非root用户的安全性原因。 但是,无论是root用户还是非root用户,openshift都不允许我在端口80的容器中创build绑定。 2017/06/22 21:18:57 [emerg] 1#1: bind() to 0.0.0.0:80 failed (13: Permission denied) nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied) 在我的本地机器上,我可以成功绑定到容器上的更高端口(例如8081),然后在主机maschine中创build一个访问映射( docker run –rm -d -p 9000:8081 mynginx )。 这样我可以成功地到达主机地址localhost:9000的网站,但我没有ideia我怎么能在openshit上实现类似的东西。 我希望我可以使用非root用户和nginx在更高端口(8081)上部署映像,同时openshift将服务器的端口80的所有传入stream量转发到容器的端口8081(nginx) 。 我目前的设置如下: Dockerfile: FROM nginx:alpine COPY nginx.conf /etc/nginx/nginx.conf COPY dist /usr/share/nginx/html RUN chmod -R 777 /var/log/nginx /var/cache/nginx /var/run \ && chgrp […]

可以在docker端口后添加前缀

我正在与docker集装箱主办我的angular4项目。 我有nginx服务器中介我的客户端和我的API。 没有find方式来访问我的前端像这个localhost /咖啡。 而不是推荐的方式访问docker127.0.0.1:9000 docker run -p 9000:80 image , 我可以这样做127.0.0.1:9000/coffee之后 docker run -p 9000/coffee:80 image. 我有权访问活动服务器上的端口9000上打开的localhost / coffee。 我需要在我公开的端口docker端口添加前缀咖啡。

Ubuntu的nginx容器403禁止

我用nginx websever构build了一个Ubuntu容器。 docker文件如下所示: FROM ubuntu:14.04 MAINTAINER James Turnbull "james@example.com" ENV REFRESHED_AT 2014-06-01 RUN apt-get -yqq update && apt-get -yqq install nginx RUN mkdir -p /var/www/html/website ADD nginx/global.conf /etc/nginx/conf.d/ ADD nginx/nginx.conf /etc/nginx/nginx.conf EXPOSE 80 文件结构如下所示: xxxxxx@xxxxx:~/sample$ ls Dockerfile nginx website 在声明中运行容器之后: sudo docker run -d -p 80 –name website \-v $PWD\website:/var/www/html/website \kostonstyle/nginx nginx nginx服务器按预期工作,但是当我请求一个网页,我只有 curl 0.0.0.0:32769 […]