完全未経験者がPythonでWEBアプリ開発してみる # 01~AWSとは?Cloud9で開発環境構築 (Yuuui)

Hello,World!
Yuuuiです!

今回は先週に引き続き、Webアプリ開発の準備ということでCloud9でPython3を使うための設定をしていきたいと思います!

まずAWSってなに?

AWSとは「Amazon Web Services」の略で、みなさんがよくご存知であろう通販サイト「Amazon」のAmazonです。
Amazonってこんなサービスも提供していたのか!と驚いたのですが、正確にはAmazonの子会社がサービスを提供していてASWはAmazonの提供するWebサービスを総称して使われているとのこと。
そもそもは、

Amazon自身のインフラを支えるために作られました。世界中から集まる膨大なアクセスに対応するため、日々サーバー機器などの増強を続けていく中で、自社だけではなく、他社にも提供しようというのがスタートです。そして、AWSのサービスは2006年7月に公開されました。
参照記事

とのことで、もう10年以上サービスを提供しているんですね。
(もっと詳しく知りたい方はこちらで解説してくださってます)

今回私が使用するサービスは「Cloud9」というオンラインIDE(統合開発環境)です。

オンラインIDE(統合開発環境)ってなに?

調べたところによると、

ソフトウェアを開発する場合、一般的には、作業の各段階に応じた複数のソフトウェアを使い分ける必要があります。
プログラムのソースコードを書くためのエディタ。ソースコードからオブジェクトコードを生成するためのコンパイラ。さらにターゲットとなるCPU向けの実行コードを生成するリンカ。そして作成したプログラムのバグを検出するために使用するデバッガなどです。
統合開発環境の登場以前は、ファイル構成が複雑になればなるほど、ファイルの管理自体も複雑化。いざという時に必要なファイルが見つからなかったり、ソースコードのバージョン管理ができないなど様々な問題が発生しがちでした。
統合開発環境(IDE)とは、ソフトウェアの開発で利用されるこれらのソフトウェアを、その他の支援ツールなどとまとめてしまい、一つの開発環境で統合・統一的に扱えるようにした開発環境です。

なるほど。昔はバラバラになっていた道具をお道具箱に一式としてまとめたって感じでしょうか。

ちなみに、私が最近触っている「フレームワーク」との違いは

統合開発環境(IDE)は、エディタやコンパイラをまとめて提供する「開発環境」そのものです。日本語の「統合開発環境」という言葉の意味通りの機能を、IDEは提供します。
一方、フレームワークはアプリケーション開発の工程を楽にするものです。
参照記事

知らない横文字や難しい漢字がバンバン出てきますね、、実践する中で一つ一つ覚えていこう、と決意するYuuuiでございます。

さっそくCloud9を使ってみる

こちらの記事を参考に進めていきます。

実はこのAWS、最初にRubyでWebアプリ開発をしようと思ってUdemyのこちらの動画を見たときに使用したのですが内容を理解できずあえなくいったん離脱し、、「そういえば環境だけ作ってそのままになってたな」ということを思い出して、Rubyの環境を削除して今回Python用に作ろうかな〜と思い立ったという経緯があり。
ちなみにAWSは登録してから1年間は無料で使用できて、そこからは従量課金性だったと記憶してます。なので充分時間はありますが、試用期間をすぎると使うたびに課金されていってしまうので設定等を見直して登録解除などを忘れないようにした方がよい、とのことです。

現状基本的に表記が英語になっちゃいますが、そこまで難しい英語はない?と思いますしわかんなかったら調べればいいのでとりあえずやってみましょ。

I AM ユーザーの作成

私は前項で触れたように、動画を見ながら受動的にAWSをいじっていたので全然理解せず環境だけ作ってあったんですけれども、環境を作り直そうと思って設定に進むと「セキュリティー上の観点からI AMユーザーでやったほうがいいですよ」という注意が出てきて「???」ってなりまして。

「I AMユーザー」は作った記憶があったんですが、使用方法がわからなくてあ〜こりゃダメだって思ったので、思い切って削除して作り直すことに。(こちらも併せて参照しました)

▼rootユーザーでログインして「I AM」をクリック。ユーザーを選択します

スクリーンショット 2020-10-04 16.18.08

▼「アカウントを追加」を選択

スクリーンショット 2020-10-04 16.21.05

▼ユーザー名を設定したらアクセスの種類を選択して次へ。
今回は両方ともチェックを入れました。

スクリーンショット 2020-10-04 16.23.26

▼ユーザーをグループに追加します。

スクリーンショット 2020-10-04 16.40.57

タグの追加についてはオプションのようなので今回はスキップします。

▼最後まで登録を済ませ成功するとこのように表示されます。

スクリーンショット 2020-10-04 16.47.20のコピー

発行されたI AMユーザー用のURLとパスワードでログインします。
すると右上の使用中ユーザーが「ユーザー名@I AMユーザー番号」みたいな感じで表記が変わります。

そして続いて環境構築です。

開発環境構築

▼AWSにログインして「Create environment」をクリック

スクリーンショット 2020-10-04 15.39.44

▼環境名など入力をします。

スクリーンショット 2020-10-04 17.28.37

ちなみに初回時にはリージョンを聞かれるので自分の住んでる地域に設定します。私は東京で設定。

▼次に進むといろいろと設定が出てくるのですが、基本的に無料枠内で使用するならデフォルトのままでOKのようです。

スクリーンショット 2020-10-04 17.39.50

ちなみに「Cost-saving setting」とは例えば作業中に別件で席を外したときなど、このサービスは従量課金性なので意図しようがしまいが接続しっぱなしになっていると課金されてしまうんですね。そういったときに動いてない状態が続いている場合は、自動的に接続を落として不要な課金を防いでくれます。デフォルトの「After 30minutes」は30分動きがなければ自動的に落としますよ〜みたいなことらしいです。

▼そのまま進んで「Create new environment」を押すとこんな感じになって1,2分で構築が完了します。

スクリーンショット 2020-10-04 18.05.06

▼無事できました!ぱちぱち。

スクリーンショット 2020-10-04 18.09.09

以上、今回は「Cloud9で開発環境構築してみた」という内容でお送りしました。
Pythonをインストールしてもよかったんですが、今までの経験を振り返りふと、Cloud9も仮想とはいえPCってこと(ですよね。。?)であれば、と思って。Python2系Python3系とかそういう問題もありそうだし、実際いろいろな記事を見ると注意事項とかを見かけたのでそちらを確認してからやりたいなと思いました。
(よくわかってない私のPCにはPython3.7と3.8が両方いるし、モジュールも一箇所に落としちゃっている、反省)

今まで感覚でこんなもんやろ〜とか思って勢いで進めておりましたが、こういうものはしっかり順番や手順を守ってやることがなにより大事と学びました。普段携帯使うのでもなんでも説明書とかそういう類のものは困ったときだけ読んで、基本は「とにかく触る!」をmottoにタイマン勝負している私ですが、プログラミングの勉強を始めてからは、ことPC関係については後から直す方がすごい大変だしめんどくさいってことを痛感してます。

なので以下の記事を参照しつつ次回は進めたいと思います。

AWS Cloud9 でPython3を使うための設定
AWS Cloud9にてpython3を使用して開発する際の注意事項

次回

完全未経験者がPythonでWEBアプリ開発してみる # 02~Python3で開発するための準備

よろしくおねがいします!
(このシリーズはアニメ風予告でいくかな。。)

————————————-
☆Follow me!
Twitter @yuuui202008
不定期でワンフレーズカバーコラボあげてます:)
NANA Yuuui
★Check it Out! Subscribe!
仮歌singerが歌う「歌ってみた」動画
Youtube https://www.youtube.com/channel/UCwEZ5YUe-JWKdj_Wal-0-bw

]]>

上部へスクロール