- packages : jq, terraform
- local ssh key pair
- terraform init
- terraform apply [auto-approve]
Open ports are : 80, 8080, 22, 3000
- Prereqs installation on ec2 instance
- node7 repo
curl -sL https://rpm.nodesource.com/setup_7.x | bash -
- node7 package (! package manager aligned to AMI image used = yum)
sudo yum update && sudo yum install -y nodejs
- node7 repo
- App Deposit - Push app file
scp app.js <ip>
- Launch App
node app.js &
- Prereqs installation on ec2 instance
- docker, git packages (! package manager aligned to AMI image used = yum)
- Image building
- git clone repo
- docker build on ec2 instance
- App deployment
- stop and suppr old container
- run new one
Il va permettre de construire l'image docker à chaque commit sur le repo spécifié (ici Github)
Pour ce faire il faut connecter le dépôt Github sur GCP > Cloud Build
- Authoriser Cloud Build à pull Github
- Installer l'app Cloud Build dans le repo
- Valider en créant un déclencheur le repo
L'output sera une image hebergée dans la registry GCP Test: en passant l'image de Privée à Publique, je peux la lancer en local
Il est possible ensuite de déployer cette image dans GCP GCE, GKE, ou Cloud Run
Configurer manuellement un déploiement sur Cloud Run est OK Il est possible d'activer un déploiement continu via Cloud Build Celui-ci va se déclencher au commit sur le Github, construire l'image et la déployer dans Cloud Run