Google Cloud Shell Editorによるオンライン環境構築¶
Google Cloud Shell (GCS) Editorに関する情報をまとめます。GCSはGoogleが行っている「クラウド計算機環境+クラウドコーディング環境」のサービスです。現在、Googleのアカウントがあれば、無料で使えます。本講義では、このGCSを用います。
- 起動リンクです。このURLで起動します。ブックマークしておきましょう。起動にはかなり時間がかかることもありますので注意です。
- 公式ドキュメントです。まず迷ったらこれを読みましょう。
- プログラミング基礎演習の長谷川先生による資料。今年はプログラミング基礎演習でもGCSを用います。
注意点¶
ここに制限事項がまとまっています。特に注意する点は以下です(完全に検証したわけではないので、注意してください)
- 20分間なにもせずに放置していると切断されます。
$HOME
以下のファイルは消えずに残ります。 - なにもしないわけではなく、プログラムをずっと走らせていたとしても、キーボード入力が1時間無い場合は、自動的に切断されるようです。その場合も
$HOME
以下のファイルは消えないです。 - ずっと作業し続けていたとしても、12時間たつと切断されるようです。この場合も
$HOME
は無事です。 - 120日間使わないと、
$HOME
以下のファイルも消えます。なので、ソフトウェアの講義が終ったあと、重要なファイルはgit等にバックアップしたり、ローカルにダウンロードしておいてください。
Tips¶
- 初期状態では「オートセーブモード」になっています。すなわち、ファイルを更新すると自動的にその更新が保存されます。オートセーブを切って、保存ボタンを押すまでファイルを更新しないようにするには、「File」から「Auto Save」をチェックして解除してください。
- 過去に表示された内容が流れてしまって見えないという場合は、ターミナル画面上でマウスのホイールをスクロールすることで、過去の画面を表示することができます。あるいは、ターミナル画面の上部左にある歯車マークを押して「ターミナルの設定」から「スクロールバーを表示」とするとスクロールバーが出てきて便利です。
- 【2021/10/7追記】macでsafariだとうまく入力できないかもしれないです。その場合、chrome等のインストールを推奨します
リモート環境は、結局何がどうなっているの?¶
さて、リモートでのプログラミングは、ブラウザ上でテキストを編集したりプログラミングを実行したりするわけですが、それは結局一体何が起こっているのでしょうか?次の図をご覧ください。
ここで、上半分は普通のローカル環境でのプログラミングを表しています。本来は、こちらが普通です。 ここでは、手元のマック上で、ターミナルを開いてプログラミングをしています。ここでは手元のマシンのOSはマックであり、実行環境のOSもマックです。
下半分は、皆さんが取り組んでいるリモート環境でのプログラミングを表しています。 ここでは、右側にあるように、Googleのサーバ内にDebianというOSのコンピュータが一台仮想的に立ち上がります。そして、そのコンピュータを、 手元のマックからchromeブラウザを経由して操作します。なので、 手元のマシンのOSはマックであすが、実行環境はDebianです。
このあたりが複雑ですが、注意してください。
マシン情報(2021/09現在)¶
$ cat /etc/issue
Debian GNU/Linux 10 \n \l
$ cat /etc/debian_version
10.10
$ which gcc
/usr/bin/gcc
$ gcc --version
gcc (Debian 8.3.0-6) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.