1
0
Fork 0
trainings/terraform/training/102.md

70 lines
1.3 KiB
Markdown

# Terraform 102
## objectif
Parce qu'on ♥ `demo-flask`, nous allons maintenant deployer une instance `demo-flask` !
Youpi!
Commencez par travailler dans un nouveau dossier 102:
```bash
mkdir 102
cd 102
```
## provider.tf
Creer ensuite le fichier `provider.tf`:
```
terraform {
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "1.46.0"
}
}
}
provider "openstack" {
}
```
## demo-flask.tf
Creez maintenant `demo-flask.tf` pour demarrer un serveur qui utilisera le cloud-init suivant:
[install-demo-flask.sh](files/install-demo-flask.sh)
## init and apply
Lorsque vous etes pret:
```bash
terraform init
terraform apply
```
## resource output
Ajouter une resource output pour afficher l'url de votre serveur demo-flask:
```bash
# Adaptez demo-flask avec le nom de votre serveur
output "demo-flask-url" {
value = "${format("http://%s", openstack_compute_instance_v2.demo-flask.access_ip_v4)}:8080"
}
```
## Ajout d'une resource security group
Vous avez essayer d'ouvrir l'url ? Cela fonctionne-t-il ?
Il vous manque sans doute quelques resources pour gerer les security groups rules:
```
openstack_networking_secgroup_v2
openstack_networking_secgroup_rule_v2
```
N'oubliez pas que `demo-flask` ecoute par defaut sur le port 8080 !