在docker容器中放置nginx.conf文件的位置
我有一个flask应用程序在docker容器中的AWS ec2中运行,我有延迟问题。我认为这是因为在容器中,localhost路由到ipv4的在docker容器中放置nginx.conf文件的位置,docker,nginx,Docker,Nginx,我有一个flask应用程序在docker容器中的AWS ec2中运行,我有延迟问题。我认为这是因为在容器中,localhost路由到ipv4的127.0.0.1和ipv6的::1(基于其他一些SO帖子)。我找到了正确解决问题的方法。但在博客中,他使用了nginx,这是我以前从未使用过的。他有一个nginx配置文件: location / { try_files $uri @project; } location @project { include uwsgi_params; u
127.0.0.1
和ipv6的::1
(基于其他一些SO帖子)。我找到了正确解决问题的方法。但在博客中,他使用了nginx,这是我以前从未使用过的。他有一个nginx配置文件:
location / { try_files $uri @project; }
location @project {
include uwsgi_params;
uwsgi_pass unix:/tmp/uwsgi.sock;
}
我不知道如何才能把它放在容器里,这样它才能正确阅读。我在某处读到它位于/etc/nginx中,但是如何编辑dockerfile以在其中包含此conf
这就是他建议的Dockerfile。文件复制到的行是addnginx/etc/nginx
?他只是没有给文件一个扩展名
FROM ubuntu:14.04
RUN apt-get update && apt-get install -y build-essential nginx python3.4 python3.4-dev
RUN easy_install3 pip
WORKDIR /project
ADD requirements.txt /project/requirements.txt
RUN pip install -r requirements.txt
ADD . /project
ADD nginx /etc/nginx
CMD uwsgi -s /tmp/uwsgi.sock -w project:app --chown-socket=www-data:www-data --enable-threads & \
nginx -g 'daemon off;'
是的,他正在将文件
nginx
添加到容器文件系统位置/etc/nginx/
我个人会将文件命名为nginx.conf
,因为根据nginx
文档,这是默认名称
默认情况下,配置文件名为nginx.conf并放置在
目录/usr/local/nginx/conf、/etc/nginx或
/usr/local/etc/nginx
另外,我建议使用COPY
代替ADD
,根据
对于不需要添加tar的其他项目(文件、目录)
自动提取功能,您应该始终使用复制
要实现这一点,您需要在运行flask的容器上安装nginx