「.NET Core」に関する日記(3)

<前

VPS+CentOS7+Nginx+ASP.NET

昨日まで構築していたVPS環境は、設定がいろいろしっちゃかめっちゃかになってしまったので、いったん初期化しました。

んで、DockerとMastodonは後回しにするという前提で、FTPサーバーを確実にインストールすることから始めることにしました。
とにかく、ややこしい設定にするとたちまち詰まるのは目に見えているので、シンプルな設定で済むように、コマンドを打つときに使っているSSHを暗号通信にそのまま使えるSFTPでやることにしました。

VPSでやりたいことは、Linux(ここではCentOS7)で、C#により記述されたプログラムを動かすサーバーを動かしたいので、Nginxと.NET Coreをインストール。
WebサーバーはApacheでもよかったのですが、どうせWebサーバー本体はHTTP/HTTPSでのアクセスへの玄関口としてしか使わないし、Nginxのほうが新しくて軽くてシェアも伸ばしているらしいし、最悪、背後でApacheサーバーを動かすこともできると分かったので、新しいサーバー技術の勉強も兼ねて、WebサーバーはNginxにしました。設定自体は案外簡単で、HTTPで公開するだけなら、ちょろっと設定ファイルをいじって、Nginxを自動実行するように設定するだけです。

.NET Coreのインストールも簡単で、マイクロソフトの公式サイトに書いてある手順を踏むだけ。昨日はASP.NETを動かすという場面で詰まってしまいましたが、ファイルのアップロードができなかったために詰まっていたので、その点も解決済みです。こちらも、ASP.NETのサーバーを自動実行するように設定しました。

そして、実際にできたのが、以下のサイト。テスト用なので、いずれ消すとは思いますが、ひとまずはうまく動いているようです。
http://linuxtest.tgws.plus/

あとは、VPSでいろいろ定期実行したいこともあるので、crontabについても調べていきたいところですね。

以下、参考にしたサイト。

Visual Studio CodeとVPS

Visual Studio Code

PHPの整形は、いろいろある中で、php cs fixer(小文字のほう)がうまく使えました。
PSR-2に従って整形してくれるらしいのですが、命名規則までは直してはくれないようです。
コーディング規則の最終確認にはSideCIを使っているのですが、ここでチェックすると、警告はある程度までは減っても、ある程度は残ってしまうんですね。
SideCIは本当に最終確認で、気軽にここで調整というわけにはいかないので、できるだけ手元でさっと確かめたいのですが、そのあたりの環境はまだ構築できていません。

VPS

マストドンをちょっとやってみたくてVPS始めたんですが、うまくいかなかったので、もう一個やりたかったこと、.NETのWebアプリケーションをLinux上のサーバーで動かすというのに挑戦しています。
今あるサイトをここのサーバーに置き換えるのではなく、新しいことを始めたい、というところです。
もちろん、軌道に乗ればサーバー移転も考えますが。
先日学習していたdotnetコマンドの件は、これの準備段階ということで、とりあえずハローワールドですが成果が出ました。

dotnet

例えば、C#で作っているfunyakのステージデータが正当なものであるかどうかを検証するには、同じC#で作ったプログラムを使うほうが簡単だったり仕様の不一致が防げたりして都合がいいわけです。

まだFTPを入れていなくて、手元で作ったWebアプリケーションを向こうで試せないので、ちょっとFTPも入れておこうと思います。

.NET Core

Dockerであれこれやるのはいったん置いといて、使い慣れたC#をLinux完了で動かすため、.NET Coreについて勉強中。
さくらのVPS無料お試し期間中にできる限りのことはやっておきたいのです。
とりあえず、手元のWindows環境での.NET Coreの実行には成功。
Linux環境ではまだ試していませんが、dotnetコマンドで実行ができるようです。

<前