個人開発環境が欲しくて
個人的な開発環境が欲しくて昨年末から少しずつ自宅に開発用のサーバー環境を整えています。
基本的には24時間稼働して、どこからでもアクセスできるようにしたいなと思い。色々と試行錯誤しながら構築しました。
そこで今回は、どのようなサーバー環境を整えているかを簡単に紹介したいと思います。
1.機材
まず機材の選定としては、省電力で静音なものを選ぼうと思い、Intel N100プロセッサを搭載した以下のNUCを選択しました。
・Beelink MINI-S12 Pro(2万円程度)
性能的には弱い方ですが、個人開発環境としては十分な性能で省電力・静音なので、今回機材としてはこれを選択しました。
また、2.5インチのSSDも搭載できるので、ついでに2TBのSSDを搭載しました。
2.OS
OSは標準でWindows11 proがインストールされているのですが、この手のPCはライセンス的に怪しい部分があるのでProxmoxをインストールし、複数の仮想マシンを起動できるようにしました。
Proxmoxは、KVMとLXCを使って仮想マシンを起動できるので、個人開発環境としては十分な機能を持っていると思います。
3.VPN
どこからでもアクセス出来るようにするために、VPNを導入することにしました。
極力、自宅のルーターやパソコンの設定を変更したくないので、Tailscaleを導入しました。
Tailscaleは、難しい設定が不要で同じアカウントでログインするだけで、Tailscaleをインストールした端末同士でVPN接続が出来るようになるという非常に優れたソフトウェアです(個人利用では100台まで無料)。
Proxmox上のLXCにTailscaleをインストールしSubnet routerを設定することによって、そのLXCにVPN接続を行うだけで、自宅のネットワークにどこからでもアクセスできるようになりました。
4. KVM・LXC
現在、Proxmox上に以下の仮想マシンを起動しています。
・Ubuntu22.04(KVM) : 開発環境(VScodeとか)
・TrueNAS(KVM) : NAS
・Ubuntu22.04(LXC) : Tailscale専用
とりあえず、現状この3つ仮想マシンで満足していますが、状況に応じて追加・削除する予定です。
Proxmoxはこれらを簡単に操作できるので本当に満足しています。
5. まとめ
今回は、個人開発環境を整えるためにどのようなサーバー環境を整えているかを簡単に紹介しました。
投資費用は4万円程度でランニングコストも電気代で月300円かかるかどうか程度なので、お財布的にもあまり痛くないです。
お金に余裕ができればもう一台サーバーを追加して、クラスタ構成にしたりとか考えていますが、
環境だけ作って満足している部分もあるので、どうするかまだ検討中です。
(担当:きょ。)