En savoir plus : Explorer le livre de recettes utilisé dans cette procédure pas à pas - AWS OpsWorks

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

En savoir plus : Explorer le livre de recettes utilisé dans cette procédure pas à pas

Important

Le AWS OpsWorks Stacks service a atteint sa fin de vie le 26 mai 2024 et a été désactivé tant pour les nouveaux clients que pour les clients existants. Nous recommandons vivement aux clients de migrer leurs charges de travail vers d'autres solutions dès que possible. Si vous avez des questions sur la migration, contactez l' AWS Support équipe sur AWS Re:Post ou via le AWS Support Premium.

Cette rubrique décrit le livre de recettes utilisé par AWS OpsWorks Stacks pour la procédure pas à pas.

Un livre de recettes est un concept Chef. Les livres de recettes sont des fichiers d'archive qui contiennent les informations de configuration, telles que les recettes, les valeurs d'attribut, les fichiers, les modèles, les bibliothèques, les définitions et les ressources personnalisées. Une recette est également un concept Chef. Les recettes sont des instructions, écrites avec la syntaxe du langage Ruby, qui spécifient les ressources à utiliser et l'ordre dans lequel ces ressources sont appliquées. Pour plus d'informations, consultez À propos des livres de recettes et À propos des recettes sur le site web Découvrir Chef.

Pour voir le contenu du livre de recettes utilisé dans cette procédure pas à pas, extrayez le contenu du fichier opsworks-linux-demo-cookbooks-nodejs.tar.gz dans un répertoire vide de votre poste de travail local. (Vous pouvez également vous connecter à l'instance sur laquelle vous avez déployé le livre de recettes et explorer le contenu du répertoire /var/chef/cookbooks.)

Le fichier default.rb dans le répertoire cookbooks/nodejs_demo/recipes est l'emplacement où le livre de recettes exécute son code :

app = search(:aws_opsworks_app).first app_path = "/srv/#{app['shortname']}" package "git" do options "--force-yes" if node["platform"] == "ubuntu" && node["platform_version"] == "18.04" end application app_path do javascript "4" environment.update("PORT" => "80") git app_path do repository app["app_source"]["url"] revision app["app_source"]["revision"] end link "#{app_path}/server.js" do to "#{app_path}/index.js" end npm_install npm_start end

Voici ce que fait le fichier :

  • search(:aws_opsworks_app).first utilise la recherche Chef pour rechercher des informations sur l'application qui sera déployée sur l'instance. Ces informations incluent des paramètres tels que le nom court de l'application et les détails du référentiel source. Comme une seule application a été déployée dans cette procédure pas à pas, la recherche Chef obtient ces paramètres depuis le premier élément d'information au sein de l'index de recherche aws_opsworks_app sur l'instance. Chaque fois qu'une instance est lancée, AWS OpsWorks Stacks stocke ces informations et d'autres informations connexes sous forme d'ensemble de sacs de données sur l'instance elle-même, et vous obtenez le contenu du sac de données via Chef search. Même si vous pouvez coder en dur ces paramètres dans la recette, l'utilisation des conteneurs de données et la recherche Chef constituent une approche plus solide. Pour plus d'informations sur les conteneurs de données, consultez AWS OpsWorks Référence du sac de données Stacks. Consultez aussi À propos des conteneurs de données sur le site web Découvrir Chef. Pour plus d'informations sur la recherche Chef, consultez À propos de la recherche sur le site web Découvrir Chef.

  • La ressource package installe Git sur l'instance.

  • La ressource application décrit et déploie les applications web :

    • javascriptest la version du JavaScript moteur d'exécution à installer.

    • environment définit une variable d'environnement.

    • git obtient le code source du référentiel et de la branche spécifiés.

    • app_path est le chemin d'accès pour cloner le référentiel. Si le chemin n'existe pas sur l'instance, AWS OpsWorks Stacks le crée.

    • link crée un lien symbolique.

    • npm_install installe le Gestionnaire de package de nœud, le gestionnaire de package par défaut pour Node.js.

    • npm_start exécute Node.js.

Bien que AWS OpsWorks Stacks ait créé le livre de recettes utilisé pour cette procédure pas à pas, vous pouvez créer vos propres livres de recettes. Pour savoir comment procéder, veuillez consulter la section Mise en route : livres de recettes. De même, consultez À propos des livres de recettes, À propos des recettes et Découvrir les bases de Chef sur Ubuntu sur le site web Découvrir Chef et la section « Notre premier livre de recettes Chef » de Premières étapes avec Chef sur le site web Mise en route avec Chef.