自宅サーバー

自宅サーバー

初ポストです(´・ω・`)

こんにちは!今日のトピックは自宅サーバーです~
同僚から自宅サーバーで何のアプリを実際しているのか見せてくれて、自分のサーバーを買うことにしました😂

サーバーはレボノ製のThinkCentre M710Qです。
スペックはCPUはIntel i7-8700、RAMは64GB、ストレージは512GB NVMe SSD、PCIe x16スロットあって、仮想マシンを実行できそうです🧐

何のアプリを実行している?

色々なアプリを実行していますが、このリストは私にとって必要なアプリだと思います🤔

アプリ 利用は
OpenVPN 実行しているアプリでは脆弱性が存在する可能性があるので、仮想プライベートネットワークでアクセスした方が良い
ddclient (Dockerで) ISPはホームネットワークに動的IPアドレスを割り当てるので、dnsclientでドメインサービスのDNS Aレコードを常に更新する
Rclone Googleドライブに写真やアプリ設定ファイルをバックアップする
File Browser (Dockerで) ファイルを外でアクセスができる

自分のGithubでインストールクリプトを載せましたから、もし興味があったら是非見てください🙇

他のおすすめアプリは?

これも私は実行したことがあっておすすめなんですが、もし他のアプリを探したらAwesome-Selfhostedのアプリ一覧も参考してみましょう!

アプリ 利用は
Jellyfin メディアサーバーでビデオや音楽を放送してウェブ・Android・iOSアプリで観る
code-server Visual Studio Codeウェブ版
Samba ネットワークドライブ(SMB経由)でファイルを共有する
Bitwarden パスワードマネージャー
ゲームサーバー Minecraft, Counter-Strikeなど

Docker...とは?

さっきの必要なアプリのリストでDocker (ドッカー)を書いてあると気づいましたか?😮

簡単にいうと、DockerとはOS (ホスト)から独立して、アプリをコンテナ内で実行することです。OSとの間にネットサービスもファイル共有もできますよ。

ということで、Dockerの利用理由は

  1. セットアップとテアダウン(解体)をしやすい
    1. 万一アプリの設定やファイルはバラバラになったら、再セットアップでは手順が少ないし早い
  2. 依存関係のバージョンを複数にサポートができます
    1. 例:アプリAはJava 19必要で、アプリBはJava 21必要
  3. ストレージ隔離
    1. コンテナはOSの一部のファイルシステムをアクセスする制限ができる

あと、Docker Composeをおすすめです。どちらかというと、Docker Compose(下)の設定のシンタックスはDocker(上)よりキレイだと思います。

なので、自宅サーバーを試してみてください!