Partage
  • Partager sur Facebook
  • Partager sur Twitter

Déployer mon application jsf dans aws.amazon.com

    2 octobre 2021 à 17:17:25

    Bonjour ,  j'ai créé une application Java EE avec les outils : Éclipse, Glassfish 5, MySQL 5.7, primefaces 10 et Bootstrap. J'ai exporté et j'ai le fichier projet.war.

    Je suis débutant en programmation.

    J'ai créé un compte sur aws.amazon.com, j'ai créé une instance EC2 et je peux me connecter en SSH.

    Je ne sais pas comment faire pour déployer mon projet.war 

    Que dois-je faire maintenant ?

    Dois-je installer glassfish 5 dans mon instance EC2 ?

    Et Mysql ?

    J'ai besoin d'aide SVP. Je tourne en rond depuis quelques temps.

    • Partager sur Facebook
    • Partager sur Twitter
      3 octobre 2021 à 8:12:15

      T'as vraiment besoin de Glassfish ou tomcat suffit?

      T'as lu la doc d'amazon AWS?

      https://docs.aws.amazon.com/index.html

      • Partager sur Facebook
      • Partager sur Twitter
        3 octobre 2021 à 18:45:08

        P.X.L a écrit:

        T'as vraiment besoin de Glassfish ou tomcat suffit?

        T'as lu la doc d'amazon AWS?

        https://docs.aws.amazon.com/index.html


        Merci déjà votre réaction. Mais je ne comprends pas la première question.

        En local j'ai créé un pool de connexion dans glassfish pour faire les requêtes CRUD dans MySQL.

        Maintenant je ne sais pas si avec aws je dois encore installé glassfish et faire les mêmes configurations comme en local !

        Les docs que j'ai lu font tous allusion à Tomcat seulement.

        • Partager sur Facebook
        • Partager sur Twitter
          3 octobre 2021 à 18:56:56

          La première question signifie, est-ce que tu utilises des fonctionnalités de Glassfish qui ne sont pas présentes dans Tomcat?
          • Partager sur Facebook
          • Partager sur Twitter
            3 octobre 2021 à 19:37:58

            P.X.L a écrit:

            La première question signifie, est-ce que tu utilises des fonctionnalités de Glassfish qui ne sont pas présentes dans Tomcat?


            Dans mon application en local j'utilise jsf,J  EJB JPA. Glassfish permet de faire ça facilement alors qu'à Tomcat il faut des ajouts comme Spring.

            Mais ma préoccupation se situe au niveau de la mise en ligne.

            Lorsque j'ai fini le projet et j'ai le projet.war, comment faire pour le déployer sur un VPS ?

            • Partager sur Facebook
            • Partager sur Twitter
              4 octobre 2021 à 13:18:49

              Bonjour,

              Sur un serveur EC2 tu peux installez Glassfish comme tu l'installes en local. Tu te connectes en ssh sur le serveur distant EC2, tu désarchives glassfish puis tu saisis la commande pour le démarrer.

              Mais tu dois au préalable installer la bonne version de Java, configurer la variable d'environnement JAVA_HOME et surtout ouvrir les ports 8080,4848 . Pour ouvrir les ports depuis la console aws, tu cliques sur le groupe de sécurité aws de ton instance afin d'ajouter ces ports (entrants et sortants).

              Pour démarrer Glassfish, tu te positionnes sur le répertoire bin de glassfish

              asadmin start-domain domain1

              Une fois le serveur démarré tu as maintenant accès à l'adresse:

              http://ec2.xxxxx-eu-west-3.compute.amazonaws.com:8080

              En ce qui concerne la base de données,  le service RDS te permet de configurer et gérer une instance de la base de données. A la fin de la config t'auras les paramètres d'accès à ta BD. Côté EC2 il important d'ouvrir le port 3306 pour permettre à Glassfish de communiquer avec la BD.

              Quant au Pool de connexion, tu peux la créer soit via l'interface d'admin de glassfish soit en ligne de commande. Idem pour déployer ton war.

              Maintenant si tu veux mettre ton application production, pour des raisons de performance et de sécurité il est possible de mettre en place un reverse proxy avec Nginx de telle sorte que l'internaute n'aura juste à saisir le nom de domaine( sans le port 8080) lui permettant dialoguer avec ton application via nginx . du coup tu peux interdire à tout le monde  sauf à localhost d'écouter  le port 8080.enfin verrouiller le port 4848.

              -
              Edité par armel.mc 4 octobre 2021 à 13:21:40

              • Partager sur Facebook
              • Partager sur Twitter

              Déployer mon application jsf dans aws.amazon.com

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown