Hyper-vを使ってUbuntu 20.04をインストールする。の続き
Hyper-V上でubuntuを実行する場合の注意事項については、
のドキュメントに記載があって、
HYPER-V の使用を増加させるには、適切な linux ツールと仮想マシンでのツールおよび使用するためのデーモンをインストールする linux クラウド ツール パッケージをインストールします。 Linux 仮想カーネルを使用する場合は、linux マシン ツールから仮想マシンと linux-クラウド ツール-バーチャルを読み込みます。
という記載があります。
具体的にはHyper-Vに最適化されたKernelがあるので、そちらをインストールします。
# apt-get update
# apt-get install linux-azure
すでにFocal(ubuntu 20.04)に対応したパッケージがあるので、それを使うことになります。
https://packages.ubuntu.com/focal/linux-azure
# init 6
で再起動。rebootでもいい。なんでもいいので再起動します。
Hyper-vを使ってUbuntu 20.04をインストールする。
Microsoftの1st partyハイパーバイザーといえばHyper-Vですが、いろいろできるようになってんだなーって関心。
クイック作成をクリックするとOSの選択に進む
まず、isoをダウンロードします。
http://releases.ubuntu.com/20.04/
Desktop imageをクリック。注意書きとしては、1024MiBのRAMが必要だと書いてある。CPUって最近のだと大体性能的に問題なさそうだしね。
ローカルインストール元を選んで、この仮想マシンではWindowsを実行しますのチェックボックスを外す。
下部のあるその他のオプションをクリックして適当に名前を変更する。
インストール元の変更をクリックし、ダウンロードしたisoを選択する。
仮想マシンの作成をクリック。
起動をすると、自動的に下記の画面に遷移。
Linux Kernelも5.4となってますね。
今すぐ再起動して、インストール完了です。お疲れさまでした。
remote development extension
そういえば、家に空いたThinkpad X1があったなぁと思いつき、簡単にssh serverの設定をして、じゃあどうやって使うかなって思ったときに、VSCodeから全部できたらべんりだと思った。そういうわけでWindows上のVSCodeにExtensionをいれて遊んでみようと思ったので。作業。
VSCodeを立ち上げ、Extensionの検索まどからRemote Developmentを検索し、インストール。まだPreviewだけど対して悪さしないだろうから使う。
すでにWSLとの組み合わせで活用しているけど、ちょっとマシンパワーほしいなって時に使うのによさそう。
接続は非常に簡単で、左下にあるOpen a remote windowをクリック。
Remote-ssh: Connect to hostを選択
user@host形式で入力し、+ Add New SSH Host...を選択
そのあと、Linuxを選択するとつながる。
もちろんリモートのターミナルも立ち上がる。
SSHクライアントにいろいろ使っている人もいるだろうけど、puttyとかteratermとか使わなくてもこれでいいよね?って感じる。FTP?セキュアでないサーバってもう使いたくないよね。
リモートの設定ファイルを確認したりできる。
あとは、Remote Developmentで開いたVSCodeのExplorerにドラッグアンドドロップでファイルアップロードしたり、Explorer経由でダウンロードもできる。
以上です~。
二段階認証にYubikeyを積極的に使いだした話。
FIDOの努力によってか、YubiKeyが世の中に広がってきたおかげか。いろいろなサイトでNon-Passwordログインの世界が広がってきた。今は、まだ2段階認証だけだけど、例えばWebTokenを新しくしたいときなんかに鍵を開く感覚で物理キーを使えたらさぞかしいいだろうと思っていたところ。
あと、集中したいのにスマホを開くというのはナンセンス、煩雑(それさえもめんどくさい)なので、できれば物理的なタッチだけ!などの手段を使いたいということで二段階認証のためにyubikeyを積極的に使い始めています。
よくある質問として
Q. YubiKeyをなくした場合はどうするの?
A. ほかの手段の二段階認証はとっておくべきで、例えば電話認証など。おそらく、電話とカギ別の場所においているはず(キーチェインに電話ぶら下げてないよね?)なので、大丈夫かと思います。電話をなくした場合には、電話の電源が切られてなければ追跡する。電話の電源が切られていれば、ワイプする準備。YubiKeyをなくした、盗難された場合には、Yubikeyを登録してサイトから登録を解除。
GitHubの例
Twitterの例
Mac OSですぐにphpの環境を用意する
PHPも進化していて、ビルドインウェブサーバーってのがある。
php -S localhost:8080
これだけ、一行。
いろいろな言語をやってきているけど、やっぱりこういうところがLLのいいところであるとおもう。LLのイベントにもまた参戦してみたいです。
Azure App Serviceに対応するランタイムリスト 2020/03/30現在
App Serviceで何かアプリを作ろうとしたときに、最初からContainerを用意する必要はなく、Microsoftが容易したDefault Container および Application Runtimeが選択できます。
もちろん、Bring your own containerも可能です。その場合は、Azure Container Registryなどを活用しつつデプロイを楽にする方法もあります。
でもまぁ、基本的には、Code Pushするだけの方法が手軽でいいですよね。
その際にOSの選択ができます。App Service のWindowsとLinuxでは、一部の機能で差があるため、機能制約を受けずにアプリケーションを実行するために、どちらのOSを選択するかがカギになります。
ただ、ランタイムによっては、WindowsだけのものとLinuxだけのものがあるので、下記にまとめておきます。
※参考情報ですので、詳しくは公式情報を得るためにサポートに問い合わせてください。
Runtime | Windows | Linux |
.NET Core | ||
.NET Core 3.1(LTS) | × | 〇 |
.NET Core 3.0 | 〇 | 〇 |
.NET Core 2.1(LTS) | 〇 | 〇 |
ASP.NET | ||
ASP.NET v4.7 | 〇 | × |
ASP.NET V3.5 | 〇 | × |
Java 11 | ||
Java SE | × | 〇 |
Tomcat 8.5 | 〇 | 〇 |
Tomcat 9.0 | 〇 | 〇 |
Java 8 | ||
Java SE | 〇 | 〇 |
Tomcat 9.0 | 〇 | 〇 |
Tomcat 8.5 | 〇 | 〇 |
Node | ||
Node 12 LTS | 〇 | 〇 |
Node 10 LTS | × | 〇 |
Node 10.14 | 〇 | 〇 |
Node 10.10 | × | 〇 |
Node 10.6 | 〇 | 〇 |
Node 10.1 | × | 〇 |
Node 10.0 | 〇 | × |
PHP | ||
PHP 7.3 | 〇 | 〇 |
PHP 7.2 | 〇 | 〇 |
Python | ||
Python 3.8 | × | 〇 |
Python 3.7 | × | 〇 |
Python 3.6 | 〇 | 〇 |
Ruby | ||
Ruby 2.6 | × | 〇 |
Ruby 2.5 | × | 〇 |
Ruby 2.4 | × | 〇 |
以上