Cloud9でPython3環境構築入門!【AWS】

AWS

PyQさんのおかげもあってPythonの文法や、簡単なWebアプリの開発周りについてはなんとなくわかってきました。
なんでそろそろポートフォリオ作りたいなと思い、まずPyQから離れてプログラムを書き始めようと思ったわけです。

さて、ここで入門者が必ずぶつかる環境構築の壁に私も例外なく当たりました。
ざっくりいうと環境構築ってのは3種類に分けられ、

  1. クラウドIDE(統合開発環境)を使う
  2. 自分のPC(メインで使っているOS)に直接開発環境を構築する
  3. 仮想環境を立ち上げ、その上で開発環境を構築する

って感じになるようです。

さらに

3.仮想環境を立ち上げ、その上で開発環境を構築する

の中でも仮想環境の種類が3つほどあり、

  1. ホスト型(VMとか)
  2. コンテナ型(Dockerとか)
  3. ハイパーバイザ型(KVMとか)

があるらしい。

しかも

クラウドIDE(統合開発環境)を使う

にもやれCloud9やらCodeAnywhereやら色々種類があったり、

2.自分のPC(メインで使っているOS)に直接開発環境を構築する

に至っては、下手すると元のMacOSに入っているPython2と衝突が起き不具合が発生しまくる(今回開発に使っているのはPython3です)かもしれないという恐ろしい情報まで目にし、
一体どこからどう選んでどう手をつけていけばいいのか悩みまくりました。

・・・・・・
で、結論なんですが初心者が簡単なアプリを作るだけなら

1.クラウドIDE(統合開発環境)を使う

でFAです。
特に

Cloud9

使っとけばいいと思います。

ちなみに最もオススメしないのは

2.自分のPC(メインで使っているOS)に直接開発環境を構築する

で、とにかくホストOSが汚れるようなことはなるべくしないほうが良さそうだというのは色々調べていく中で見えてきました。
エンジニアとしてのレベルが上がって、インフラ周りもだんだんわかるようになってきたら

3.仮想環境を立ち上げ、その上で開発環境を構築する

でやってみるといいと思います。

その中でもDockerがいい感じだと思いました。
学習コストは高めですが、環境の破壊・再生が容易なためストレスなく安全・手軽です。また、DockerHubというプラットフォームを利用して環境の素みたいなもの(Dockerではimageというらしいです)を引っ張ってきて、そこにちょっとしたカスタマイズを加えれば自分の思い通りの開発環境がサクッと作れてしまいます。

さらに最近では本番環境にそのままDockerを乗っけてデプロイするなんてことも一般化しているようで、色んなWeb系ベンチャーがどんどん採用しているHotな技術がこのDockerです。時間があるときに勉強してみようかと思います。

前置きが長くなりましたが、とにかくPythonの初心者ならとりあえずCloud9を使ってどんどんコード書いていきましょうというのが結論です。
Cloud9はクラウド上で動作するので、WindowsだろうがMacだろうがLinuxだろうが問題なくPythonの環境構築を行えます。

ここからは実際にCloud9を使ってプログラムを実行する流れを解説していきます。

Cloud9を使ったPython3環境構築

まずはAWSの公式ページにアクセス

AWSアカウントを作成する

無料サインアップを押してアカウント作成画面に移動、フォームに従って項目を埋めていきます。
途中クレジットカード情報の入力画面が出てきますが、登録したからといって無条件にお金を払うことにはならないのでご安心を。

AWSコンソールにサインイン

アカウントからAWSマネジメントコンソールをクリックしてサインインします。

Cloud9に移動

Cloud9を検索し選択、移動先でCreate environmentをクリック。

環境設定

Name environment画面で環境名、環境に関する説明を入力。

Configure settingsで詳しい環境設定
基本的には全てデフォルトのままでいいです。

補足すると

Environment type

環境に新しいインスタンスを作成する(Create a new instance for environment (EC2))か、リモートのサーバーに繋いでそこで動作させるか(Connect and run in remote server (SSH))の2択が選べます。
クラウドではよくインスタンスという言葉が出てきますが、これは「物理的な1台のコンピュータ上でソフトウェアとして立ち上げた仮想的なコンピュータ」という意味です。
ちなみにEC2というのはAWSで使える仮想サーバのことであり、ほとんどの人はCloud9上だけで手軽にプログラムを実行したいはずなので「Create a new instance for environment (EC2)」の方を選択しとけばいいと思います。
EC2は一応接続時間に応じて利用料金がかかります。とは言っても最初の1年間は1ヶ月あたり750時間の無料利用枠が付いているので、よほど使いすぎなければ1年間は無料です。

Instance type

インスタンスの種類を選択できます。RAMとかCPUのサイズを選べます。一番小さいデフォルトのやつで十分でしょう。ちなみに話は逸れますが、初心者はRAMとROM混同しやすいので注意。同じメモリでもRAMはRandomAccessMemoryの略で作業領域、ROMはReadOnlyMemoryの略で保存領域です。私もよくわかってなかったので脳の「ROM」に刷りこんでおきました。

Cost-saving setting

利用終了してから設定した時間経過後に、自動でインスタンス止めてくれます。便利ですね。
AWSでも推奨されているAfter 30minutesで問題ないですね。一応Neverも選べます。

Network settings (advanced)

ネットワークやサブネットなどの設定も選べます。ここもデフォルトで問題ないですし、割愛。。

作成・実行

create environmentを押して環境作成!
ちなみに旧Cloud9ではこのenvironmentはworkspaceと呼ばれていたらしいですが、2つは同じ(?)ものなので安心しましょう。

あとはCreate FileUpload Filesからファイルを作成し、

エディタでRunすると、

実行されます。

簡単ですね!!

こんな感じで初心者はCloud9を使っとけば楽だよってお話でした。

コメント

タイトルとURLをコピーしました