Passer la navigation

CI/CD using Jenkins on Azure Container Service (AKS)

par Tyler Lu
Dernière mise à jour : 25/01/2018

Containers make it very easy for you to continuously build and deploy your applications. By orchestrating deployment of those containers using Kubernetes in Azure Container Service, you can achieve replicable, manageable clusters of containers. By setting up a continuous build to produce your container images and orchestration, you can increase the speed and reliability of your deployment.

Ce modèle ARM (Azure Resource Manager) a été créé par un membre de la communauté et non par Microsoft. Chaque modèle ARM vous est concédé sous licence sous un contrat de licence par son propriétaire, et non par Microsoft. Microsoft ne peut pas être tenu responsable des modèles ARM fournis et concédés sous licence par les membres de la communauté, ni ne vérifie leur sécurité, leur compatibilité ou leurs performances. Les modèles ARM de la communauté ne sont pris en charge par aucun programme ou service de support Microsoft. Ils sont rendus disponibles EN L'ÉTAT sans garantie d'aucune sorte.

Paramètres

Nom du paramètre Description
spClientId Service Principal Client ID used by Jenkins and Azure Container Service (AKS).
spClientSecret Service Principal Client Secret used by Jenkins and Azure Container Service(AKS).
linuxAdminUsername User name for the Linux Virtual Machines (Jenkins and Kubernetes).
linuxAdminPassword Password for the Jenkins and Grafana Virtual Machines.
linuxSSHPublicKey Configure all linux machines with the SSH RSA public key string. Your key should include three parts, for example 'ssh-rsa AAAAB...snip...UcyupgH azureuser@linuxvm'
cosmosDbName Name of the CosmosDB.
acrName Name of the Azure Container Registery. The name may contain alpha numeric characters only and must be between 5 and 50 characters.
jenkinsDnsPrefix Unique DNS Name for the Public IP used to access the Jenkins Virtual Machine.
grafanaDnsPrefix Unique DNS Name for the Public IP used to access the Grafana Virtual Machine.
kubernetesDnsPrefix Optional DNS prefix to use with hosted Kubernetes API server FQDN.
kubernetesClusterName The name of the Managed Cluster resource.
kubernetesAgentCount The number of nodes for the cluster.
kubernetesAgentVMSize The size of the Virtual Machine.
kubernetesVersion The version of Kubernetes.
gitRepository URL to a public git repository that includes a Dockerfile.
_artifactsLocation The base URI where artifacts required by this template are located. When the template is deployed using the accompanying scripts, a private location in the subscription will be used and this value will be automatically generated.
_artifactsLocationSasToken The sasToken required to access _artifactsLocation. When the template is deployed using the accompanying scripts, a sasToken will be automatically generated.
location Location for all resources.

Utiliser le modèle

PowerShell

New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/jenkins-cicd-container/azuredeploy.json
Installer et configurer Azure PowerShell

Ligne de commande

azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/jenkins-cicd-container/azuredeploy.json
Installer et configurer l'interface de ligne de commande multiplateforme Azure