0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Go言語初心者】EC2インスタンス作成〜Vscodeで「hello go」するまで

Posted at

Go言語の勉強をするなら、
いっそのこと、インスタンス上で勉強をしたいと思いhello goを出すまでできたので、
備忘録として記録しております。

環境

・MacOS
・Visual Studio Code
・Amazon linux2
・Go

1.インスタンスの作成
2.EC2にSSH接続する
3.golangインストール
4.vscodeでリモート接続する
5.参考

##1. EC2インスタンスの作成
AWSの画面は日々変わっていきますが、操作自体はそんなに変わらないと思います。
スクリーンショット 2021-05-29 20.13.03.png

まず、オレンジボタンの**「インスタンスを起動」**をクリックします

スクリーンショット 2021-05-29 20.16.05.png

次にAMI(インスタンスを起動するのに必要なOSなどのテンプレート)を選択します。
今回はAmazon Linux2を選択します。

※左のサイドバーから、自分で作ったAMIや最初からWordpressが一緒に貼っているAMIなどを選ぶこともできます。

ステップ2: インスタンスタイプの選択は、無料枠のt2.microを選択します。

※規模などにより、タイプが変わるかと思いますが、
勉強用やポートフォリオ用なら、無料枠で十分だと思います。

スクリーンショット 2021-05-29 20.28.09.png

ステップ3: インスタンス詳細の設定
デフォルトでも問題はないかと思います。
今回は、サブネットをパブリックに、
自動割り当てパブリックIPをインターネットから接続ができるようにしたかったので、有効にします。

ステップ4: ストレージの追加
EBS ボリュームやインスタンスストアボリュームをアタッチをアタッチできるそうですが、
これは置いといて、サイズを部分を指定できます。今回はデフォルトの8GBにします。

※終了時に削除は、チェックが入っていればインスタンスを削除した際、このボリュームも一緒に削除されるのですが、
チェックが入っていないと存在したままになってしまい、無駄に課金が続いてしまうようです。

ステップ5: タグの追加
キーにName、値に任意の名前を入れると、
インスタンス一覧画面のNameに反映され管理しやすくなります。
Nameの変更は後からでもすることができます。

スクリーンショット 2021-05-29 20.43.03.png

ステップ6: セキュリティグループの設定
Amazon EC2 セキュリティグループ
こちらの記事で詳しい説明がされております。

デフォルトでSSH接続はできるようになっているで、
今回はHTTPとHTTPSを追加しました。

ステップ7: インスタンス作成の確認
設定の確認画面です、問題なければ起動をクリックします。

起動をクリック後、キーペアの画面が表示されます。
とても大事なものになり、この画面からしかダウンロードができません。
その後、間違えて削除したら、キーペアの再発行はできるのですが、
手順が複雑なため大切に保管しましょう!

※.cerで保存されていた場合は、拡張子を.pemに変更します。

キーペアのダウンロードが終わりましたら、
インスタンスが起動してきます。

インスタンス一覧画面で、インスタンスの状態が**「実行中」**になったらインスタンスの作成は終了です。

##2. EC2にSSH接続する
ダウンロードしたキーペアがあるディレクトリに移動します。

// キーペアがちゃんと保存されているか確認する
$ ls -l キーペア名.pem

// ssh接続する
$ ssh -i キーペア名.pem ec2-user@パブリックID

Are you sure you want to continue connecting?(接続を続行してもよろしいですか?)
と効かれるのでyesを入力し、
EC2のロゴが表示されれば、接続完了です。

##3. golangインストール
EC2の中にgolangをインストールしていきます。
amazon-linux-extrasでもインストールできるのですが、
バージョンが古くなってしまうようで、wgetでインストールしていきます。

$ wget https://golang.org/dl/go1.16.2.linux-amd64.tar.gz
$ sudo tar -C /usr/local -xzf go1.16.2.linux-amd64.tar.gz

次にパスを通します。

$ sudo vi /etc/profile 
# 下をコピペで貼り付けてください
PATH=$PATH:/usr/local/go/bin
$ source /etc/profile
$ go version
go version go1.16.2 linux/amd64

バージョンが表示されたら成功です。

##4. vscodeでリモート接続する
VsCodeの拡張機能から、**「Remote SSH」**をインストールします。

インストール後、左のメニューにパソコンマークの
リモート接続アイコンが表示されるので、それをクリックして開きます。

SSH TARGETSの+アイコンを押して、
出てきたダイアログに、先ほどEC2にSSH接続した時のコマンドを入力します。

ssh -i キーペア名.pem ec2-user@パブリックID

※ec2-userのところは選択したAMIによって変わります。

次にダイアログからどのconfigファイルを利用するか選択します。
どちらでも大丈夫です。

その後、右下にファイルを開くかどうかポップアップが出るので、
Open Configで開きます。

スクリーンショット 2021-05-29 21.21.14.png

configファイルが開きますので、
UserはAMI、IndentityFileはキーペア.pemのディレクトリを書きます。

あとは、左のメニューのSSH TARGETSの下に今作成した
configファイルのHost名が表示されているので、
右クリックから、Connect to Host in Current Windowをクリックします。

しばらく待ちますと、
スクリーンショット 2021-05-29 21.26.30.png

上記のような画面が表示されるので、
goファイルを作成し、hello worldを書いて、
ターミナルにhello worldが表示されました。
よかったです(o'∀')ノ

##5. 参考
VSCodeを使ってAWS EC2のソースコードを編集する
[VSCodeを使ってAWS EC2のソースコードを編集する[(https://qiita.com/takao-takass/items/9f81d5095924280966ae)

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?