- Dockeriser cette application JavaEE qui tourne sous wildfly
- Déployer l'image docker sur AWS ElasticBeanStalk.
- Tester l'application en local : http://localhost:18080/POC_PI_AWS-web/index.jsf ==> elle devra afficher votre IP publique et votre localisation géographique
- Installer Docker sur votre machine
- Avoir un compte sur DockerHub
docker --version
Docker version 18.09.4, build d14af54
java -version
java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
clean package
On va utiliser ce chemin par la suite /Path_to/POC_PI_AWS-ear.ear
Dockerfile:
#https://hub.docker.com/r/jboss/wildfly
FROM jboss/wildfly:9.0.0.Final
COPY POC_PI_AWS-ear.ear /opt/jboss/wildfly/standalone/deployments/
CMD ["/opt/jboss/wildfly/bin/standalone.sh", "-b", "0.0.0.0"]
- Il faut copier le ear a coté du Dockerfile
- puis, aller au dossier qui contient le Dockerfile.
- Construire l'image
docker build -t wildfly-poc-aws .
- Vérifier l'image
docker images
Lancer le container
docker run -it --name wildfly-poc-aws-container -p 8080:8080 wildfly-poc-aws
Et maintenant, il faut tester l'application en local : http://localhost:18080/POC_PI_AWS-web/index.jsf
Si vous n'avez jamais fait un push sur DockerHub, il faut faire :
docker login
Lister les images
docker images
Pour pouvoir faire le push il faut que le nom de l'image commence par votre username sur DockerHub (c'est le nom du repository par défaut)
docker tag wildfly-poc-aws yaich/wildfly-poc-aws
Faire le push sur DockerHub
docker push yaich/wildfly-poc-aws
- Créer le fichier Dockerrun.aws.json
{
"AWSEBDockerrunVersion": "1",
"Image": {
"Name": "yaich/wildfly-poc-aws",
"Update": "true"
},
"Ports": [
{
"ContainerPort": "8080"
}
]
}
- Aller à la console AWS, au service AWS ElasticBeanStalk
- Créer une nouvelle application
- Créer un environnement associé a cette application
- Choisir WebServer environement
- puis, choisir Preconfigured platform et selectionner Docker.
- Attendre quelques minutes et vérifier Health = Ok
- Appuyer sur le bouton "Upload and Deploy" et choisir le fichier qu'on a crée dans la première étape : Dockerrun.aws.json
- Puis tester : http://IP_publique/POC_PI_AWS-web/index.jsf