practical-ansible.nginx_docker
Nginx-docker for ansible
使用 Ansible 将 Docker 项目部署到 Nginx,无论是否使用 https。此角色对您用于创建应用的语言没有限制。旨在与持续集成和持续部署工具配合使用。
特点
- 构建或使用预构建的 Docker 镜像
- 不需要 Docker 注册表
- 通过 nginx_project 配置 https
- 自动替换旧版本,使用 project_name
先决条件
- 目标用户具有配置 Nginx 的权限
- 目标用户具有运行 Docker 的权限
安装
ansible-galaxy install practical-ansible.nginx_docker
示例剧本
这是最常见的剧本
---
- name: 部署到测试 Docker 容器
hosts: all
roles:
- role: practical-ansible.nginx_docker
vars:
admin_email: '[email protected]'
image_local: 'test_app.tar'
project_port: '3000'
project_name: 'my-app'
project_version: '0.1.0'
server_names: 'localhost,www.localhost'
use_ssl: true
env:
print_this: '测试部署: X Æ A-12'
您可以在 tests 目录中找到更多示例。
示例 CI
还有更多 配置示例。
参考手册
使用此手册,以避免在将您的 Docker 包装应用程序部署到 Nginx 时产生倦怠症。
内容目录
默认变量
client_max_body_size
Nginx 的最大文件上传大小。值由 nginx 文档 定义。
默认值
client_max_body_size: 1M
env
要传递给 Docker 容器的环境变量字典。
默认值
env:
nginx_docker: yes
示例用法
env:
PORT: 80
SECRET_TOKEN: xa2z3ik6
image_local
提取的 Docker 镜像路径。当为空时,角色将在本地主机上尝试构建图像,然后再将图像上传到远程。期望 Dockerfile 与剧本在同一目录中。
默认值
image_local: ''
示例用法
image: './dist/my-app.tar'
image_name
将从 Docker 仓库拉取的镜像名称。
默认值
image_name: ''
示例用法
image: 'requarks/wiki'
network_name
此容器使用的 Docker 网络名称。如果必要,角色将创建它。
默认值
network_name: practical-ansible
示例用法
network_name: 'totally-separated-network'
project_port
容器的内部端口号。角色将此端口从 Docker 映射到 Nginx 代理。
默认值
project_port: 80
示例用法
project_port: 3000
依赖项
- {'role': 'practical-ansible.nginx_project'}
许可证
MIT
作者
Pavel Žák
关于项目
Deploy your Docker project to Nginx with minimal config
安装
ansible-galaxy install practical-ansible.nginx_docker
许可证
mit
下载
660
拥有者
Tiny Ansible roles and playbooks that help you with web hosting in a world of VPS