J'ai créé un environnement Java EE sur AWS et essayé d'exécuter une application Web

2019/10/7 Révision complète

============================================================================= Bonjour. Il s'agit de zd6ir7. Cela fait longtemps depuis le post précédent. Cette fois, je publierai un mémo lorsque j'ai créé un environnement Java EE sur AWS et déployé et exécuté une application Web là-bas. L'application à exécuter cette fois est l'application Web de la boutique en ligne de "Miscellaneous Goods store.com" qui apparaît à la fin de "Introduction au système Web Java EE facile à comprendre" (Note 1) ).

** 1. Configuration logicielle ***

La configuration logicielle de l'environnement AWS EC2 réalisée cette fois est la suivante.

--OS: noyau Linux version 4.14

** 2. Procédure de construction / exécution **

La procédure de création de l'environnement et d'exécution de l'application Web cette fois est la suivante.

1. Créer un nouvel environnement AWS Colud9

Créez un compte AWS en vous référant à l'article "Première introduction d'AWS Cloud9". Créez une instance EC2 d'Amazon Linux à partir du menu EC2 de la console de gestion.

2. Mise à jour Java

Java est inclus dans l'environnement, mais il a été mis à jour vers Java 8 sur la base de l'article «Création d'un environnement de développement Java 8 avec AWS Cloud 9».

3. 3. Introduction de glassfish.

Installez glassfish 5.0.1 (Note 2) en vous référant à l'article "Mémo pour la création d'AWS + GlassFish 4.1". Lorsque vous tapez la commande wget, vous devez spécifier l'URL de la source de téléchargement de glassfish5.0.1, mais spécifiez l'URL de la v5.0.1 depuis site de téléchargement de glassfish. Derby (JavaDB) est installé en même temps que glassfish est installé. Laissez Glassfish en marche pour les étapes ultérieures.

Quatre. Démarrer Derby

L'application Web à exécuter cette fois doit être connectée à la base de données. Étant donné que la connexion sera établie plus tard, 3. Démarrez Derby installé dans (Note 3).

sudo bin/asadmin start-database
Starting database in Network Server mode on host 0.0.0.0 and port 1527.
--------- Derby Network Server Information --------
Version: CSS10100/10.10.2.0 - (1582446)  Build: 1582446  DRDA Product Id: CSS10100
(Omission)

Starting database in the background.
Log redirected to /opt/glassfish4/glassfish/databases/derby.log.
Command start-database executed successfully.

Cinq. Paramètres du groupe de sécurité

Ajout de paramètres de sécurité à l'environnement AWS EC2 pour accéder à l'écran de la console Glassfish et aux applications à partir d'un PC. Plus précisément, sélectionnez le groupe de sécurité approprié dans le menu EC2 de la console AWS et spécifiez le protocole, le numéro de port et l'adresse IP source d'accès auxquels vous souhaitez accéder à l'environnement AWS EC2 dans l'onglet "Entrant". Dans la figure ci-dessous, le numéro de port par défaut 8080 pour glassfish, le numéro de port 4848 pour la console de gestion Glassfish et le numéro de port 22 pour SSH sont définis pour passer. security_group.png

6. Obtention du nom d'hôte et de l'adresse IP

Cinq. De plus, il est nécessaire d'obtenir des informations sur le nom d'hôte ou l'adresse IP de la destination d'accès. Comme le montre la figure ci-dessous, vous pouvez vous référer à ces informations en sélectionnant l'environnement approprié dans le menu EC2 de la console AWS. ホスト名とIPアドレス.png

7. 7. glassfish start

Depuis le navigateur du PC, https: // <6. Nom d'hôte ou adresse IP de destination d'accès obtenu dans>: 4848 / Accédez à et lancez la console de gestion Glassfish. 3. 3. Étant donné que je l'ai également configuré pour passer https, il se peut que l'on vous demande si vous souhaitez parcourir ce site en fonction du navigateur, mais continuez à naviguer tel quel. Comme le montre la figure ci-dessous, vous serez invité à entrer votre nom d'utilisateur et votre mot de passe. Entrez le nom d'utilisateur et le mot de passe définis à l'étape 1 pour vous connecter. glassfishコンソール画面.png

8. Paramètres de connexion avec Derby

Définissez la source de données à partir de l'écran de la console de gestion Glassfish connecté 7. Plus précisément, les deux étapes suivantes sont prises.

--Depuis le menu "JDBC" sur le côté gauche de la console de gestion> "JDBC Connection Pools", appuyez sur "New" pour créer un nouveau pool de connexions. Défini en fonction des informations de la section "Introduction au système Web Java EE facile à comprendre". Créé ici avec le nom "Derby Pool". La figure ci-dessous montre la situation lors de la communication de ce pool de connexions à la base de données Derby.

DBへの接続.png

9. Déployer une application Web

Placez le fichier war de l'application "Miscellaneous Goods store.com" dans le répertoire de déploiement. Pour le placement cette fois, téléchargez le fichier depuis le PC en utilisant "SCP" de Tera Term. Puisque glassfish est en cours d'exécution, glassfish le lit et exécute le processus de déploiement lorsqu'il est placé. Ce qui suit est un extrait du journal du serveur au moment du déploiement.

[2019-10-07T11:38:08.497+0900] [glassfish 5.0] [INFO] [AS-WEB-GLUE-00172] [javax.enterprise.web] [tid: _ThreadID             =53 _ThreadName=AutoDeployer] [timeMillis: 1570415888497] [levelValue: 800] [[
  Loading application [zakka-ya-san] at [/zakka-ya-san]]]

[2019-10-07T11:38:08.617+0900] [glassfish 5.0] [INFO] [] [javax.enterprise.system.core] [tid: _ThreadID=53 _Thre             adName=AutoDeployer] [timeMillis: 1570415888617] [levelValue: 800] [[
  zakka-ya-san was successfully deployed in 9,423 milliseconds.]]

[2019-10-07T11:38:08.619+0900] [glassfish 5.0] [INFO] [NCLS-DEPLOYMENT-02035] [javax.enterprise.system.tools.dep             loyment.autodeploy] [tid: _ThreadID=53 _ThreadName=AutoDeployer] [timeMillis: 1570415888619] [levelValue: 800] [             [
  [AutoDeploy] Successfully autodeployed : /opt/glassfish5/glassfish/domains/domain1/autodeploy/zakka-ya-san.war             .]]

Dix. Exécutez l'application Web

Depuis le navigateur du PC, http: // <6. Accédez au nom d'hôte ou à l'adresse IP de destination d'accès obtenue dans>: 8080 / zakka-ya-san / et exécutez l'application "Miscellaneous Goods store.com". Un site d'achat pour l'apprentissage apparaît (Note 4)

アプリケーション起動画面.png

** 3. en conclusion**#

Il y avait des points difficiles, mais j'ai pu le construire dans un laps de temps étonnamment court. C'est un moment vraiment pratique car vous pouvez facilement créer un environnement. Merci d'avoir lu jusqu'ici.

note de bas de page#

(Note 1) Pour plus de détails sur l'application, reportez-vous au chapitre 18 du même livre. Pour être exact, c'est après le dernier exercice. (Note 2) Avec glassfish5.0, je fais "asadmin restart-domain" dans "Memo for building AWS + GlassFish 4.1", mais il y a une erreur. Cela deviendra. Voir article stackoverflow pour plus d'informations. Puisque le problème a été résolu dans la version supérieure, glassfish 5.0.1, j'ai décidé d'utiliser la même version ici. (Note 3) Veuillez vous référer à l'URL suivante pour plus de détails sur les opérations de démarrage / arrêt Derby. https://docs.oracle.com/cd/E19159-01/820-3956/genej/index.html (Remarque 4) À l'origine une application d'apprentissage, vous ne pouvez pas faire vos achats ici! !!

Recommended Posts

J'ai créé un environnement Java EE sur AWS et essayé d'exécuter une application Web
J'ai essayé d'exécuter Java dans un terminal Mac
J'ai essayé d'utiliser Log4j2 sur un serveur Java EE
J'ai essayé de moderniser une application Java EE avec OpenShift.
J'ai essayé d'exécuter une application d'accès à la base de données sur IKS + Db2 sur IBM Cloud (6. Préparation de l'application d'accès à la base de données (java))
Créez une application JAVA WEB et essayez OMC APM
[Pour les débutants] Jusqu'à la création d'un environnement de développement d'applications Web utilisant Java sur Mac OS
J'ai essayé de créer un environnement de développement java8 avec Chocolatey
J'ai essayé d'implémenter une application web pleine de bugs avec Kotlin
J'ai essayé de développer une application web à partir d'un mois et demi d'histoire d'apprentissage de la programmation
J'ai essayé d'exécuter une application d'échange de cartes de crédit avec Corda 1
J'ai essayé de créer un environnement de développement Spring MVC sur Mac
AWS Elastic Beanstalk # 1 avec Java à partir de zéro - Création d'un environnement d'application Web Java à l'aide de l'interface de ligne de commande EB-
J'ai construit un environnement de rails avec docker et mysql, mais j'étais malade
4. Création d'un manifeste et exécution d'un module Web
J'ai essayé de créer une application d'apprentissage automatique avec Dash (+ Docker) part1 ~ Construction de l'environnement et vérification du fonctionnement ~
Création d'un environnement de développement pour les applications Web Java avec Docker pour Mac Part1
Un débutant Java a essayé de créer une application Web simple à l'aide de Spring Boot
Créez un environnement de développement d'applications Web qui utilise Java, MySQL et Redis avec Docker CE pour Windows
Je souhaite créer un SNS Web sombre avec Jakarta EE 8 avec Java 11
Créer un environnement de développement Java sur Mac
Créer un environnement de développement Java 8 avec AWS Cloud 9
Déployer des applications Web Java sur Heroku
[Java] Déployer une application Web créée avec Eclipse + Maven + Ontology avec Heroku
J'ai essayé de créer une application de conversation en Java à l'aide de l'IA «A3RT»
Volume d'essais pour créer une application Web Java sur Windows Server 2016
Comment migrer une application Web créée dans un environnement Docker local vers AWS
Créer un environnement de développement d'applications Web Java avec Docker pour Mac Part2
Créer un serveur d'applications Web (Java) sur VPS
J'ai construit un environnement CentOS 8 avec Vagrant et essayé de sync_folder, mais j'ai eu une erreur, donc je l'ai résolue.
[Première construction d'environnement] J'ai essayé de créer un environnement Rails6 + MySQL8.0 + Docker sur Windows 10.
J'ai essayé de cloner une application Web pleine de bugs avec Spring Boot
[Azure] J'ai essayé de créer une application Java pour la création d'applications Web gratuites - [Débutant]
J'ai essayé de mettre facilement Java sur mon Mac
java j'ai essayé de casser un simple bloc
Créer un environnement Laravel sur une instance AWS
J'ai créé Code Pipeline avec AWS CDK.
Préparer un environnement de scraping avec Docker et Java
Créer un environnement d'exécution Java sur Sakura VPS
J'ai essayé de casser le bloc avec java (1)
J'ai essayé de créer une fonction / écran d'administrateur de site commercial avec Java et Spring
J'ai essayé de déployer une page créée avec l'antique Middleman sur Azure Static Web Apps
[Azure] J'ai essayé de créer une application Java gratuitement ~ Se connecter avec FTP ~ [Débutant]
Je souhaite l'implémenter en plus lors de l'utilisation de kotlin sur un site exécutant Java
Créez un environnement de développement Java à l'aide de jenv sur votre Mac
Essayé l'API Toot et Streaming de Mastodon en Java
Créer un environnement de développement Ruby on Rails sur AWS Cloud9
J'ai construit un environnement Ubuntu sur Windows 10 en utilisant WSL2.
Exécutez Maven sur Java 8 lors de la compilation sur Java 6 et des tests sur Java 11
J'ai essayé de faire fonctionner SQS en utilisant AWS Java SDK
J'ai essayé de créer une compétence Clova en Java
J'ai essayé de créer une fonction de connexion avec Java
J'ai essayé d'utiliser YOLO v4 sur Ubuntu et ROS
J'ai essayé OCR de traiter un fichier PDF avec Java
Un mémo quand j'ai essayé "Parler d'écrire une application Java dans Eclipse et de la publier dans Kubernetes dans un conteneur Liberty (Partie 1)"