practical-ansible.nginx_docker

Nginx-docker pour Ansible

Intégration Qualité Téléchargements Rôle

Utilisez Ansible pour déployer des projets Docker sur Nginx avec ou sans HTTPS. Ce rôle ne se soucie pas de la langue que vous avez utilisée pour créer votre application. Conçu pour être utilisé avec des outils d'intégration et de déploiement continus.

Fonctionnalités

  • Crée ou utilise une image docker préconstruite
  • Ne nécessite pas de registre docker
  • Configure HTTPS via nginx_project
  • Remplace automatiquement les anciennes versions via project_name

Prérequis

  • Utilisateur cible avec des droits pour configurer Nginx
  • Utilisateur cible avec des droits pour exécuter Docker

Installation

ansible-galaxy install practical-ansible.nginx_docker

Exemple de playbook

Voici le playbook le plus courant

---
- name: Déployer dans un conteneur Docker de test
  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: 'Test de déploiement : X Æ A-12'

Vous pouvez trouver plus d'exemples dans le répertoire tests.

Exemple CI

Il y a encore d'autres exemples de configuration.

Manuel de référence

Utilisez ceci pour éviter le syndrome d'épuisement lors du déploiement de votre application encapsulée dans Docker sur Nginx.

Table des matières


Variables par défaut

client_max_body_size

Taille maximale de téléchargement de fichiers pour Nginx. Valeur définie par documentation Nginx

Valeur par défaut

client_max_body_size: 1M

env

Dictionnaire des variables d'environnement qui seront transmises au conteneur Docker.

Valeur par défaut

env:
  nginx_docker: yes

Exemple d'utilisation

env:
  PORT: 80
  SECRET_TOKEN: xa2z3ik6

image_local

Chemin vers l'image Docker extraite. Lorsque vide, le rôle tentera de construire l'image sur l'hôte local avant de télécharger l'image sur le serveur distant. Il s'attend à ce que le Dockerfile soit présent dans le même répertoire que le playbook.

Valeur par défaut

image_local: ''

Exemple d'utilisation

image: './dist/my-app.tar'

image_name

Nom de l'image qui sera récupérée depuis le dépôt Docker.

Valeur par défaut

image_name: ''

Exemple d'utilisation

image: 'requarks/wiki'

network_name

Nom du réseau Docker utilisé par ce conteneur. Le rôle le créera si nécessaire.

Valeur par défaut

network_name: practical-ansible

Exemple d'utilisation

network_name: 'réseau-totalement-séparé'

project_port

Numéro de port intérieur du conteneur. Le rôle va mapper ce port de Docker au proxy Nginx.

Valeur par défaut

project_port: 80

Exemple d'utilisation

project_port: 3000

Dépendances

  • {'role': 'practical-ansible.nginx_project'}

Licence

MIT

Auteur

Pavel Žák

À propos du projet

Deploy your Docker project to Nginx with minimal config

Installer
ansible-galaxy install practical-ansible.nginx_docker
Licence
mit
Téléchargements
660
Propriétaire
Tiny Ansible roles and playbooks that help you with web hosting in a world of VPS