marcusianlevine.nginx-container

构建状态

nginx-container

向您的 Ansible Container 项目添加一个 nginx 服务。运行以下命令安装该服务:

# 将工作目录设置为您的 Ansible Container 项目根目录
$ cd myproject

# 安装服务
$ ansible-container install ansible.nginx-container

需求

  • Ansible Container
  • 一个现有的 Ansible Container 项目。要创建一个项目,只需运行以下命令:
    # 创建一个空项目目录
    $ mkdir myproject
    
    # 将工作目录设置为新目录
    $ cd myproject
    
    # 初始化项目
    $ ansible-container init
    

角色变量

STATIC_ROOT: /static

nginx 服务的静态内容路径。

STATIC_LOCATION: {{ STATIC_ROOT }}/

匹配此模式的请求将被重定向到 {{ STATIC_ROOT }} 目录。通常为 "/static/" 或 "/assets/"。

PIDFILE_DIR: /run/nginx

nginx 存储当前 PID 值的路径。

ASSET_PATHS: []

从中复制静态内容的路径列表。内容将被复制到 {{ STATIC_ROOT }}。
注意 路径必须在 Ansible 构建容器内有效。如果您复制源文件,请使用 --with-volumes 将源目录挂载到构建容器中。

PROXY: no

在作为演示应用的一部分使用此角色时,nginx 需要代理 django 服务,在这种情况下将其设置为 'yes'。

PROXY_PASS: ""

接受代理请求的后端服务器地址。例如:http://django:8080

PROXY_LOCATION: ""

包含可选修饰符和匹配模式的字符串。包含匹配模式的请求将转发至 PROXY_PASS 地址。例如,~* /(api|static) 将转发以 /api/static 开头的请求。

PROXY_CONNECT_TIMEOUT: 60

proxy_connect_timeout 设置为此值(以秒为单位)。根据 NGINX 文档,不得超过 75 秒。

PROXY_SEND_TIMEOUT: 60

proxy_send_timeout 设置为此值(以秒为单位)。

PROXY_READ_TIMEOUT: 60

proxy_read_timeout 设置为此值(以秒为单位)。

可选项

EXTRA_CONFIG

额外 NGINX 配置模板的绝对路径列表,这些模板将放置在 /etc/nginx/conf.d 中。
文件名必须以 .conf.j2 结尾,但是在指定列表时只需使用 .conf

依赖

无。

贡献

为了方便您在更改角色时测试,您可以使用以下工作流程:

# 提交您的更改
$ git commit -m

# 推送您的更改 
$ git push 

# 设置工作目录为 tests
$ cd tests 

# 运行一个构建,安装最近的提交中的角色 
$ ./build.sh

几点注意事项:

  • 您必须 git push 您的更改,以便构建可以识别它们。
  • 修改 build.sh 以指向您对该角色的分叉。
  • 如果一切顺利,且构建成功,基于您最新提交构建的容器将在后台运行。
  • 正在运行的容器将发布端口 8000:8000,因此如果您在浏览器中访问 http://localhost:8000,您应该能看到默认的 nginx 页面。

许可证

Apache v2

作者信息

有关贡献者的列表,请查看 AUTHORS。感谢大家!

关于项目

nginx for Ansible Container

安装
ansible-galaxy install marcusianlevine.nginx-container
许可证
Unknown
下载
682
拥有者
Data Science + DevOps = DataEng