Basierend auf dem AWS Hands-on-Material vom 08.08.2019 habe ich die Nuxt-App manchmal mit AWS bereitgestellt, daher werde ich sie als Memorandum zusammenfassen. Da ich AWS dieses Mal zum ersten Mal berührt habe, kann es zu Fehlern kommen, aber ich würde mich über Ihren Rat zu diesem Zeitpunkt freuen. Darüber hinaus möchten wir diesmal die Nuxt-App als Beispiel in der AWS-Umgebung bereitstellen.
Es ist so.
Es mag schwierig erscheinen, aber es ist sehr leicht zu verstehen, wenn Sie sich jedes einzelne ansehen. Schauen wir es uns also nach und nach an.
VPC
** VPC ** ist eine Abkürzung für ** Amazon Web Service Virtual Private Cloud **, ein Dienst, der eine private virtuelle Cloud-Umgebung bereitstellt. Darüber hinaus werden ein virtueller Server ** EC2 ** (später erläutert) und eine Datenbank eingerichtet und verwendet.
Wählen Sie zunächst "** VPC " unter " Nach Diensten suchen " im oberen AWS-Bildschirm aus. Klicken Sie auf " VPC-Assistent starten **". ** * Was ist der VPC-Assistent ** Der ** VPC-Assistent ** ist eine Funktion, die das Erstellen von ** VPC ** - und ** NAT-Instanzen ** erleichtert. ** VPC ** ist unterteilt in ** öffentliches Subnetz **, auf das über das Internet zugegriffen werden kann, und ** privates Subnetz **, auf das nicht direkt über das Internet zugegriffen werden kann. Eine ** NAT-Instanz ** kann einfach eine Nuance sein, die ein privates Subnetz und ein öffentliches Subnetz verbindet. Ich kenne die Details auch nicht. Bitte lesen Sie Offiziell für Details.
Drücken Sie "** Select **".
Füllen Sie Folgendes aus und drücken Sie "** VPC erstellen **". ** * Was ist die Verfügbarkeitszone (AZ) ** ** AZ ** ist eine Gruppe von Einrichtungen (Rechenzentren), die physische Server in der ausgewählten Region verwalten. Durch die Verwendung mehrerer ** AZ ** mit ** ELB ** (diesmal nicht erläutert) ist es möglich, weiterhin Dienste bereitzustellen, selbst wenn der Server im Falle eines Ausfalls ausfällt. Kann sein
Drücke OK " Wenn Folgendes angezeigt wird, ist die Erstellung erfolgreich. Werfen wir einen Blick auf das Subnetz. Wählen Sie " Subzone " aus dem Menü auf der linken Seite. Überprüfen Sie das zuvor erstellte Subnetz (diesmal "Qiita-Public Subway-1a"). Überprüfen Sie, ob die Verfügbarkeitszone "ap-northeast-1a (apne1-az4)" und IPv4 "10.0.0.0/24" ist. Drücken Sie " Routentabelle **". Stellen Sie sicher, dass die Standardroute (0.0.0.0/0) auf das ** Internet-Gateway (igw-xxx ...) ** verweist. ** * Was ist Internet Gateway (IGW) ** Eine Funktion, mit der ** in ** VPC ** erstellte Subnetze ** eine Verbindung zur Außenwelt herstellen können (Verbindung zur globalen IP herstellen).
[Dieser Artikel](https://qiita.com/chro96/items/21863e0960ba4ac72470#:~:text=%E3%82%B5%E3%83%96%E3%83%8D%E3%83%83%E3 % 83% 88% E5% 86% 85% E3% 81% AB% E3% 81% 82% E3% 82% 8B% E3% 82% A4% E3% 83% B3% E3% 82% B9% E3% 82 % BF% E3% 83% B3% E3% 82% B9,% E9% 80% 81% E3% 82% 89% E3% 81% AA% E3% 81% 84% E3% 81% AE% E3% 81% A7% E3% 80% 81% E9% 80% 9A% E4% BF% A1% E3% 81% A7% E3% 81% 8D% E3% 81% BE% E3% 81% 9B% E3% 82% 93% Nach E3% 80% 82) Was ist ** Routentabelle **?
Es definiert die Regeln, nach denen die Instanzen im Subnetz zur Kommunikation gehen. Mit anderen Worten, die Routentabelle ist eine Tabelle, die beschreibt, wohin die Kommunikation gesendet werden soll, indem das Ziel (IP-Adresse) des Pakets betrachtet wird. Da wir Pakete anhand dieser Tabelle übertragen, senden Ziele, die nicht in der Tabelle aufgeführt sind, keine Pakete und können nicht kommunizieren. Der Punkt ist, dass es definiert, wo die Kommunikation für jedes Subnetz durchgeführt werden kann.
... anscheinend ...
Dieses Mal habe ich die Routentabelle noch nicht festgelegt, daher werde ich sie festlegen.
Wählen Sie "** Routentabelle " aus dem Menü " VPC ". Wählen Sie die ** Routentabelle ** mit der diesmal zu verwendenden ** VPC-ID ** aus und drücken Sie " Route bearbeiten " in " Route **".
Klicken Sie auf "** Route hinzufügen ". Wählen Sie danach " Ziel " als "0.0.0.0/0" und " Ziel " als " Internet GateWay ** → ** igw-xxx ..... ". .. Drücken Sie danach " Route speichern **".
Klicken Sie unter "** U-Boot-Zuordnung " auf " Subnetzzuordnung bearbeiten **".
Wählen Sie das ** Subnetz ** aus, das dieses Mal verwendet werden soll, und drücken Sie "** Speichern **".
Bisher konnten wir wie folgt gestalten.
EC2
** EC2 ** ist eine Abkürzung für ** Amazon Elastic Compute Cloud **, einen Dienst, der einen virtuellen Server erstellt. Da Sie das Betriebssystem und die Spezifikationen nach eigenem Ermessen frei bestimmen können, können Sie redundante Dienste realisieren.
Wählen Sie zunächst "** EC2 " unter " Dienst auswählen **" im oberen AWS-Bildschirm aus.
Drücken Sie "** Instanz starten **".
Drücken Sie diesmal "** Select " von " Amazon Linux 2 AMI .... **".
Drücken Sie diesmal nach Auswahl von "** t2.micro " auf " Nächster Schritt: Festlegen der Instanzdetails **".
Wählen Sie das zuvor erstellte ** VPC , ** Subnetz ** aus und ändern Sie " Öffentliche IP ** automatisch zuweisen " in " Aktiviert ". Klicken Sie danach auf " Nächster Schritt: Speicher hinzufügen **".
Drücken Sie einfach "** Nächster Schritt: Tag hinzufügen **".
Drücken Sie einfach "** Nächster Schritt: Sicherheitsgruppeneinstellungen **".
Wählen Sie nach dem Drücken von "** Regel hinzufügen " " Benutzerdefiniertes TCP ", " 3000 " und " 0.0.0.0/0 ". Drücken Sie danach " Bestätigung und Erstellung **".
Drücken Sie einfach "** Start **".
Wählen Sie "** Neues Schlüsselpaar erstellen ", geben Sie " Schlüsselpaarname " ein (diesmal " Qiita-Beispiel ") und drücken Sie " Schlüsselpaar herunterladen ". Und speichern Sie das Schlüsselpaar, wo immer Sie möchten. Drücken Sie danach " Instanz erstellen **". Bewahren Sie das ** Schlüsselpaar ** an einem Ihnen bekannten Ort auf, da Sie es später verwenden werden.
Klicken Sie auf "** Instanzanzeige **".
Wenn es so angezeigt wird, ist die Erstellung abgeschlossen. Sie können den Namen ändern, indem Sie auf den roten Rahmenteil des Bildes drücken. Ändern Sie ihn also vorerst.
Bisher konnten wir wie folgt gestalten.
Schließlich werden wir die Nuxt-App bereitstellen. [Dieser Artikel](https://qiita.com/TakumaKurosawa/items/e67315583009257cd1ea#ec2%E3%82%A4%E3%83%B3%E3%82%B9%E3%82%BF%E3%83%B3 % E3% 82% B9% E3% 81% ABssh% E6% 8E% A5% E7% B6% 9A% E3% 81% 97% E3% 82% 88% E3% 81% 86) war sehr leicht zu verstehen. Ich werde darauf aufbauen.
Wählen Sie "** Instanz " aus dem Menü " EC2 ". Wählen Sie Ihre ** Instanz ** aus der Liste der ** Instanzen ** aus. Kopieren Sie den Wert von " Public IPv4 Address **" aus dem Menü unten.
Starten Sie das Terminal und geben Sie den folgenden Befehl ein
#Aws heruntergeladen-tutorial.Wechseln Sie in das Verzeichnis, in dem sich das PEM befindet
$ cd ~/Wo Sie den Paarschlüssel gespeichert haben
#PEM-Datei~/.Gehe zu ssh
$ mv Qiita-example.pem ~/.ssh
#Gewähren Sie Zugriff auf die PEM-Datei
$ chmod 400 ~/.ssh/Qiita-example.pem
#SSH-Verbindung
$ ssh -i "~/.ssh/Qiita-example.pem" ec2-user@[IP-Adresse (Einfügen) früher kopiert]
Are you sure you want to continue connecting (yes/no)?Geben Sie ja ein
Bei Erfolg wird der folgende Bildschirm angezeigt.
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-2/
8 package(s) needed for security, out of 17 available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-****** ~]$
Damit ist die SSH-Verbindung abgeschlossen. Nachdem Sie Befehle in Ihrer Linux-Instanz ausführen können, installieren Sie die erforderlichen Pakete.
#yum aktualisieren
$ sudo yum update -y
#Installieren Sie Git
$ sudo yum install git -y
#Installieren Sie Docker
$ sudo yum install -y docker
#Starten Sie Docker
$ sudo service docker start
$ sudo systemctl enable docker.service
$ sudo service docker status
#OK, wenn Sie das folgende Ausgabeergebnis erhalten
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running)seit Tag 2019-12-22 03:26:02 UTC; 10s ago
Docs: https://docs.docker.com
Main PID: 12952 (dockerd)
CGroup: /system.slice/docker.service
└─12952 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd....
#Docker-Befehl aktivieren
$ sudo usermod -a -G docker ec2-user
#Einmal beenden
$ exit
#SSH-Verbindung wieder
#Wechseln Sie zum Superuser
$ sudo -i
#Laden Sie die erforderlichen Dateien herunter
curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
#Gib Autorität
chmod +x /usr/local/bin/docker-compose
#Kehren Sie zum normalen Benutzer zurück
exit
Nachdem sowohl Git als auch Docker funktionieren, wählen Sie das Projekt, das Sie bereitstellen möchten, aus Ihrem Repository aus. Dieses Mal gehen wir davon aus, dass Sie die Nuxt-App geklont haben.
Verbinden Sie ssh erneut und
git clone [URL Ihres Git-Repositorys]
cd [Projekte, die geklont wurden]
docker-compose up
Die Bereitstellung ist jetzt erfolgreich.
http://[Öffentliche VPC-IPv4-Adresse]:3000
Wenn Sie darauf zugreifen, wird der Bildschirm Ihrer App angezeigt.
Danke für deine harte Arbeit.
Recommended Posts