このブログ含め、これまで個人開発してきたWebアプリのデプロイ環境を nginx + Let’s Encrypt (Certbot) + Docker Compose or PM2 という漢の手組み環境からCoolifyというオープンソースでセルフホスト型のPaaSに移行する作業を行っています。(いずれにせよサーバーレスではなくVPS上で手動で環境構築しています。)
今まではインターネットから自宅LANにある資材へのアクセスも上記の手組み環境のうちnginxをリバースプロキシとして利用して実現していたのですが、Coolify移行に伴い80/443番ポートの受け付けがnginxではなくなってしまうので必然とCoolify上で自宅資材へのリバースプロキシを組む必要が出てきました。
Coolify自体にも別サーバーを管理する機能があり、当初はそれを利用しようと思っていたのですがMTUの問題(賃貸ネットあるある)のせいかVPS上にあるCoolifyから自宅サーバーへのSSHの公開鍵認証ができず…
仕方ないのでCoolify側でリバースプロキシ用のプロジェクトを作成し、ドメインを紐づけたnginxのコンテナを起動し、リバースプロキシ用のnginx.confを注入することによってやりたいことが実現できたので、備忘録がてらその手順をご紹介します。
前提
- ドメイン
- subdomain.example.com
- 宛先アドレス
- http://10.0.0.2:3000
- (今回自分はWireGuardで拠点間VPN接続している自宅サーバーにリクエストを転送したかった)
- http://10.0.0.2:3000
手順
リソースの作成

適当なプロジェクトを作成、リソース追加画面に遷移したらDocker Imageを選択する。

Create a new Application画面に行くのでImage Nameフィールドにnginx:alpineと入力して進む。

リソースの設定画面に遷移したらDomainsフィールドにhttps://subdomain.example.comと入力して保存する。 (※ドメインだけじゃなくてスキームの入力も必要)
設定ファイルの注入

サイドバーのPersistant Storageメニューを開き、+ AddボタンからFile Mountを選択する。

モーダルが開くので以下のように入力する
Destination Path
/etc/nginx/conf.d/default.conf
Content
入力が完了したらAddを押下して保存→モーダルを閉じてリソースをデプロイする。
Dockerビルドが完了してコンテナが立ち上がると、先程Domainsフィールドに入力したドメインで宛先アドレスで指定した資材にアクセスできるようになっているはずです🎊
この記事は 2026/01/01 12:06:43 にビルドされました




