Falconの思うままに

PASCAL好きが、気ままにマニアックなネタを

noderedのwebsocketをproxy配下のnoderedで使う

さてマイナーねたです(笑)

 

LXD配下にnoderedコンテナを構築しています。

これは特に困ることはありません。

dockerのようなこともなくVMWAREと同じ感覚で仮想マシン

内でやっているのと変わりません。

ここでVMWAREと言っている時点でWindows系のにおいが

しますが(笑)

私みたいなWindowsメインで使っている人からすれば、

これが普通の感覚です。 DeepにLinuxで飯食ってませんので......

 

話はもどりNodeRedはproxy配下で無事動き、1880で起動することなく

80ポートからnoderedが応答するように reverse proxy配下にしました。

reverse proxyにすることで仕事するURLのみ公開で管理画面を

出さずにすみます。 noderedのログイン画面をだすのはちょっとですよね

 

やっとこの切替ができて、元は1880アクセスだったのを80アクセスにしました。

DNSの力を借りて、ホスト名(サブドメイン)切替で行っています。

http://hoge.com:1880/

http://hoge.com/

の違いになりますが、

ポート指定しないほうが便利ですよね?

noderedのポート割り当てを変えているわけではないです。

 

ここで問題が発生しまして、proxy配下ですとwebsocketがつながらなく

なります。 これはwebsocketの仕組みからして途中から

httpでなくなる部分ですが、 nginxは設定で対応できます。

おまじないを唱えるとwebsocketが通るようになります。

 

探せば解説記事がありますが、要はproxy通す設定をしてあげないと

websocketは通らないよということです。

これまではIBM bluemixのサーバーでwebsocketを使っていたので、

何もしなくてよかったのですが、自前サーバーですとそれなりに

してあげないといけないんですよね。

 

着々とマルチサーバー化の統合作業が終わっています。

私の実験は

https://A.hoge.com

https://B.hoge.com

https://C.hoge.com

というURL別に別サービスを走らせる実験です。

内部はLXD,docker,nginxでのインフラ構築となります。

プロは当たり前のことだと思いますが、しがないオヤジは

これが自分できるだけでも楽しい~~

 

元は遊んでいたArm64 24Gサーバーを活用するというところで

リソースはたくさんあるんで、たくさん遊べるなあという

実験です。仕事でないので、楽しいなあ(笑)

 

 

 

code-serverをLXD+dockerで構築中

さて、code-serverをご存じでしょうか?

vscodeのweb版といいましょうか、ブラウザ上で自分だけのvscode

動きます。

 

これをLXD+dockerでやろうとしています。

LXDはなんといってもコンテナ化することで、複数サービスの立ち上げが

非常に楽です。 nginxと合わせて、3サービスをサブドメイン違いで

立ち上げていますがサーバーは同一で振り分けられています。

リバースプロキシの威力発揮です。

LDXの中でdockerを入れてcode-serverをサクッと立ち上げました。

docker対応したimageをダウンロードするだけです。

 

これをもろもろ調整してサービスを立ち上げています。

それでsshアクセスしてポートフォワードするとちゃんと動きます。

80ポート経由でいくとwebsocketではまり、secure通信経路でないと

言われはまります。

 

nginxの設定でwebsocketはクリア、secure通信はLet's Encriptでhttps通信に

します。これはCertbotで行いますが、まだdraw.ioが動いていません。

と思ったら知らぬうちに動き出した!!!

 

code-server自体はパスワード認証しかないみたいなので、

特定ipからしかアクセスできないように、IP制限をnginxで

かけておきましょう。vpn経由でアクセスすれば自分だけの

アクセスになります。

 

これで外部から自分だけのvscodeが使えるようになります。

 

さすがにLXD+dockerはマイナーみたい(笑)

でもなかなか便利だ~~

 

こういうのちゃんとメモっておかないと再構築できなくなるよね~

結局総合力です。

 

 

 

NGINXでマルチサーバー

さて、リバースプロキシを使う話です。

 

うちのサーバーは1ドメインで同一サーバーで複数サービスを

稼働させています。

LXDを使用しています。

昔からhttpのポートは80で提供する場合TOPページは

同じURLになるので、複数サービスを提供するのが

難しかったです。

URLの/配下でサービスを分ける方法もありますが、

面倒です。サーバー名を変えることでアクセスする

URLが変わるので、同一サーバーでこれをやる技法が

わからなかったのですが、リバースプロキシとLXDで

解決できるのがやっとわかり、実現しました。

 

どういうことかというと hoge.comを持っていた場合、

同一サーバー内でA.hoge.com と B.hoge.com として別のサービスを提供できると

いうことです。

うちはnextcloudと noderedを現在提供しています。

noderedはAPIのみでログイン画面、UI画面はアクセスできません。

セキュリティー上好ましいですね。

top画面はNGINXの403エラーが発生します。

 

サーバー名はDNSのほうで提供しますので、ドメイン管理と連動します。

LXDで内部ポートでサービスを立ち上げておいてnginxのリバプロを

設定します。

OCIはNSG(ネットワークセキュリティグループ)で外部ポートが

完全に開け閉めできるので、内側でポート開けておいても

通らないので大丈夫です。 それでも内部ではiptables管理で

固めていますが。

 

これで外からのアクセスを受けつつコンテナ管理なんで

サービスは独立していて干渉がありません。

 

いやあこれは便利だあ

今からcode-server を入れてサービスをさらに増やそうとしています。

OCIを初めて2年、やっとインフラがしっかりしてきて

充実させてきました。

サーバーはまだ余裕があります。

みなさんもお試しあれ。

 

 

PayPay銀行のカードレス取引

PayPay銀行ですが、いつのまにかカードレスで出金できるようになって

いたのに気づきました。

 

これは便利ですな。 セブン銀行のATMは本当に便利です。

 

最近は本当にキャッシュレスで現金を使わないのですが、

万一にそなえて数千円はいれてありますがマネークリップでよくなり

財布を持たないようになりました。

 

PayPayもたまに使いますが、VISAのタッチ決済をスマホでやるのが

最近のマイブームです。VISAでと言ってスマホをかざすと不思議な

顔をされます。 GooglePayでVISAを紐付するとこれができます。

意外と早く反応するので、めっきりQuicPayを使わなくなりました。

 

OCI VMのOS更新

OCI のVM(コンピュート)も2年たちOSのVersionも古くなってきたので

Version UPということで一度削除して、作り直しました。

 

久ぶりで緊張します。 昔、これやったら謎の課金が表示され

大慌てで削除しました。

なんだったのか謎で、課金されていなかったみたいですが。

 

そんなわけで自宅のUbuntuより古いVersion のVMを

削除しまして、めでたく再度プロビジョニングされました。

 

VM削除すると1日寝かさないとリストにでているんですよ。

削除済みなんですが。

あまり精神的によくないので、1日寝かして、まっさらな

状態を見てから作成しています。

 

さらのOSは設定をやらないといけないので、面倒ですが、

しょうがないですね。

 

IPは予約済みになっていたのを再利用することができました。

とりあえずLXDをいれたりして遊ぼうかと。

 

 

 

nextcloudでメールを見る

さて、nextcloudにメールアプリを入れました。

待望のアプリです。

本日メール設定各種を行い、めでたく送受信が取れました。

Webメールなのですが、これまでは携帯でみていたのですが

エクセル添付が見れない場合が多く、これがどこまでいけるかテストです。

 

それで最初にはまる?のが送信ボタンが押せないという事態です。

なんで~~~??? となるのですが、これは非常に単純なオペミス

なんです。

送信先アドレスをいれて、ENTERを押すのを忘れているということなんです。

 

単純ですが、気づかなかった。

メールアドレスが確定しないので、送信できない条件なんですね。

 

勉強になります。

これで快適ですよ。

 

 

 

nextcloudの同期がスムーズになった

さて、またもやNextCloudネタです。

 

おひとり様サーバであるnextcloudですが、これまでセキュリティーを考えて

VPN経由でないと接続できない対策をしていました。

最近Windows上でファイル同期が著しく遅く、実用にならなくなって

しまいました。当初はよかったので理由は不明です。

 

そこでVPN経由をやめて普通にアクセスに変えました。

その変わりログインURLをIP限定にすることで対策しました。

ログインも2段階認証化しています。

 

OCIのAmpere CPUの能力もあり、抜群に同期速度が速いです。

これならGooleDriveにも引けを取りません。

DropBoxは別格ですが)

というわけでnextcloudを新サーバーで運用を始めた話です。

 

NextCloudをコンテナ化してproxy経由にすると

IP制限ができたりいろいろできるので、こちらに注力することにします。

サーバー能力とネットワーク帯域が上がっているので

proxy配下でも気になりません。

 

そもそもSNAPインストールですと調整できる項目が少ない

のでこういう方向で行きます。

でもSNAPのいいところもあり、ユーザーとしては楽ですね。

 

 

すでに従来起動していた初代nextcloudサーバーは引退させました。

2年間の活躍でした。

こちらはAMDベースの1G RAMですがVMを停止させて、近日新OSにて復活予定。