mcpField
N
Nginx UI

Nginx UI

ローカル
nginxui.comクラウド・インフラ11.7k6 日前に更新

Nginx UI について

Nginx UIは、NginxをWebインターフェースで管理するプロジェクトです。Nginxの設定やサーバーを保守する運用担当者向けに、設定編集、バックアップと復元、クラスター管理、ログやサーバー指標の確認を提供し、AIエージェントとの連携にも対応します。

主な機能

  1. 01Nginx設定のオンライン編集とテスト
  2. 02設定のバックアップ、比較、復元
  3. 03クラスター内の設定管理
  4. 04サーバー指標とNginxログの表示
  5. 05Let's Encrypt証明書の発行と自動更新
  6. 06Webターミナルとコード補完

活用シーン

  1. 01Webインターフェースでサイト設定を変更
  2. 02過去の設定バージョンを比較または復元
  3. 03複数ノード間で設定を同期
  4. 04サーバー指標の監視とログの確認

MCP 対応

Nginx UIはAIエージェント向けのMCPインターフェースを提供し、設定管理とサービス制御の自動化を可能にします。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"nginx-ui": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"\\"
]
}
}
}
起動コマンドdocker run -i --rm '\'

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
oci\

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Nginx UI ロゴ

Nginx UI

0xJacky、Hintay、Akino が開発した、もうひとつの Nginx Web UI です。

DeepWiki Ask DeepWiki Documentation

AtomGit  AtomGit でホストされていることを誇りに思います。AtomGit は G-Star プログラムの一環です。

AtomGit Stars

Build and Publish GitHub license Release Version GitHub Stars GitHub Forks Repo Size Closed Issues Docker Stars Docker Pulls Image Size

Featured|HelloGitHub Plumber Score

Deploy on RainYun

ドキュメント

ドキュメントを確認するには、nginxui.com をご覧ください。

スポンサー

このプロジェクトがお役に立ったなら、継続的な開発とメンテナンスを支援するため、スポンサーになることをご検討ください。

GitHub Sponsors Afdian

スポンサー
AxisNow

中国本土と世界各地で一貫したアクセスパフォーマンスを実現し、ウェブサイトと API を保護・高速化します。さらに、クライアント SDK を通じてネイティブアプリやモバイルアプリにも高速化とセキュリティを提供します — セルフホスト可能なプライベート CDN|サブスクリプション型の対 DDoS CDN|自律制御可能で柔軟に組み合わせられる CDN ネットワーク。

公式コミュニティグループ

Nginx UI 公式 WeChat コミュニティグループに参加して、他のコミュニティメンバーと使用方法やデプロイのアイデア、トラブルシューティングについて議論しましょう。

以下の QR コードをスキャンして WeChat で友だち追加し、リクエストに Nginx UI Community Group と記載してください。管理者が公式コミュニティグループに招待します。

Nginx UI WeChat Community QR Code

皆さまの支援は、私たちの以下の活動を後押しします:

  • 🚀 新機能の開発を加速
  • 🐛 バグを修正し、安定性を向上
  • 📚 ドキュメントとチュートリアルを充実
  • 🌐 より良いコミュニティサポートを提供
  • 💻 インフラストラクチャとデモサーバーを維持
ツールのサポート
JetBrains Logo

JetBrains が無償のオープンソースライセンスで私たちを支援してくださっていることに感謝します。

スター数の推移

スター数の推移

英語 | スペイン語 | 簡体字中国語 | 繁体字中国語 | ベトナム語 | 日本語

目次
  1. プロジェクトについて
  2. はじめに
  3. 手動ビルド
  4. Linux 用スクリプト
  5. Nginx リバースプロキシ設定の例
  6. 貢献
  7. ライセンス

プロジェクトについて

ダッシュボード

デモ

URL:https://demo.nginxui.com

  • ユーザー名:admin
  • パスワード:admin
機能
  • CPU 使用率、メモリ使用率、ロードアベレージ、ディスク使用率などのサーバー指標をオンラインで確認できます。
  • 変更後に設定を自動でバックアップし、バージョンの比較や復元ができます。
  • 複数ノードへのミラーリング操作に対応したクラスター管理により、マルチサーバー環境を簡単に管理できます。
  • 暗号化された Nginx / Nginx UI の設定をエクスポートし、新しい環境へすばやくデプロイして復元できます。
  • 複数のモデルに対応したオンライン ChatGPT アシスタントを強化しました。Deepseek-R1 の思考過程を表示し、設定の理解と最適化を支援します。
  • MCP(Model Context Protocol)は、AI エージェントが Nginx UI と連携するための専用インターフェースを提供し、設定管理とサービス制御を自動化できます。
  • ワンクリックでデプロイでき、Let's Encrypt 証明書を自動更新します。
  • 独自開発の NgxConfigEditor は、使いやすいブロックエディターで nginx の設定を編集できます。または、LLM コード補完に対応し、nginx の設定構文をハイライト表示する Ace Code Editor を使って、ウェブサイトの設定をオンラインで編集できます。
  • Nginx のログをオンラインで表示できます。
  • Go と Vue で開発されており、単一の実行可能バイナリとして配布されます。
  • 設定ファイルを自動でテストし、設定の保存後に nginx を再読み込みします。
  • Web ターミナル
  • ダークモード
  • レスポンシブ Web デザイン
国際化

以下の言語を公式にサポートしています。

  • 英語
  • 簡体字中国語
  • 繁体字中国語

英語を母語としない開発者として正確さを心がけていますが、改善の余地は常にあると考えています。問題にお気づきの場合は、ぜひご意見をお寄せください。

素晴らしいコミュニティの協力により、ほかの言語も利用できます。Weblate で翻訳を確認し、翻訳にご協力ください。

はじめに

使用する前に

Nginx UI は、Debian のウェブサーバー設定ファイルの標準に従います。作成されたサイト設定ファイルは、Nginx の設定フォルダー(自動検出)の下にある sites-available フォルダーに配置されます。有効なサイトの設定ファイルからは、sites-enabled フォルダーへのシンボリックリンクが作成されます。設定ファイルの整理方法を調整する必要がある場合があります。

Debian(および Ubuntu)以外のシステムでは、以下に示す Debian 形式に合わせて nginx.conf 設定ファイルの内容を変更する必要がある場合があります。

http {
	# ...
	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}

詳細については、debian/conf/nginx.conf をご覧ください。

インストール

Nginx UI は、以下のプラットフォームで利用できます。

  • macOS 11 Big Sur 以降(amd64 / arm64)
  • Windows 10 以降(amd64 / arm64)
  • Linux 2.6.23 以降(x86 / amd64 / arm64 / armv5 / armv6 / armv7 / mips32 / mips64 / riscv64 / loongarch64)
    • Debian 7 / 8、Ubuntu 12.04 / 14.04 以降、CentOS 6 / 7、Arch Linux などが含まれますが、これらに限定されません
  • FreeBSD
  • OpenBSD
  • Dragonfly BSD
  • Openwrt

最新リリースから最新の配布版をダウンロードするか、Linux 用インストールスクリプトを使用してください。

使用方法

Nginx UI を初めて起動したときは、ブラウザーで http://<your_server_ip>:<listen_port> にアクセスして、後続の設定を完了してください。

実行ファイルから

ターミナルで Nginx UI を実行する

nginx-ui -config app.ini

ターミナルで Control+C を押すと、Nginx UI を終了できます。

Nginx UI をバックグラウンドで実行する

nohup ./nginx-ui -config app.ini -pidfile nginx-ui.pid &

以下のコマンドで Nginx UI を正常に停止します。

kill -TERM "$(cat nginx-ui.pid)"
Systemd を使用する

Linux 用インストールスクリプトを使用した場合、Nginx UI は systemd の nginx-ui サービスとしてインストールされます。systemctl コマンドを使用して操作してください。

Nginx UI を起動する

systemctl start nginx-ui

Nginx UI を停止する

systemctl stop nginx-ui

Nginx UI を再起動する

systemctl restart nginx-ui
Docker を使用する

Docker イメージ uozi/nginx-ui:latest は最新の nginx イメージをベースとしており、ホスト上の Nginx の置き換えに使用できます。コンテナーのポート 80 と 443 をホストに公開すれば、簡単に切り替えられます。

注意
  1. このコンテナーを初めて使用する際は、/etc/nginx にマッピングするボリュームが空であることを確認してください。
  2. 静的ファイルをホストする場合は、ディレクトリーをコンテナーにマッピングできます。
  3. 古いイメージからアップグレードする場合は、必要な conf.d/nginx-ui.conf の更新について、Docker WebSocket 修正ガイドをご覧ください。
Docker でデプロイする
  1. Docker をインストールします。

  2. 次のように nginx-ui をデプロイします。

docker run -dit \
  --name=nginx-ui \
  --restart=always \
  -e TZ=Asia/Shanghai \
  -v /mnt/user/appdata/nginx:/etc/nginx \
  -v /mnt/user/appdata/nginx-ui:/etc/nginx-ui \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -p 8080:80 -p 8443:443 \
  uozi/nginx-ui:latest
  1. Docker コンテナーが起動したら、http://<your_server_ip>:8080/install から nginx-ui パネルにログインします。 ポートマッピングを変更した場合は、代わりにコンテナーポート 80 にマッピングされたホストポートから Nginx UI にアクセスしてください。
Docker-Compose でデプロイする
  1. Docker-Compose をインストールします。

  2. 次のような docker-compose.yml ファイルを作成します。

services:
    nginx-ui:
        stdin_open: true
        tty: true
        container_name: nginx-ui
        restart: always
        environment:
            - TZ=Asia/Shanghai
        volumes:
            - '/mnt/user/appdata/nginx:/etc/nginx'
            - '/mnt/user/appdata/nginx-ui:/etc/nginx-ui'
            - '/var/www:/var/www'
            - '/var/run/docker.sock:/var/run/docker.sock'
        ports:
            - 8080:80
            - 8443:443
        image: 'uozi/nginx-ui:latest'
  1. 次のコマンドでコンテナーを作成します。
docker compose up -d
  1. Docker コンテナーが起動したら、http://<your_server_ip>:8080/install から nginx-ui パネルにログインします。 ポートマッピングを変更した場合は、代わりにコンテナーポート 80 にマッピングされたホストポートから Nginx UI にアクセスしてください。

手動ビルド

公式ビルド版が提供されていないプラットフォームでは、手動でビルドできます。

前提条件
  • Make

  • Golang 1.27.2+

  • Bun 1.4.3(このリポジトリのパッケージマニフェストおよび CI で固定されているバージョン)

  • node.js 21+

    npx browserslist@latest --update-db
    
フロントエンドのビルド

app ディレクトリーで以下のコマンドを実行してください。

bun install
bun run build
バックエンドのビルド

まずアプリをビルドし、その後プロジェクトのルートディレクトリーで以下のコマンドを実行してください。

go generate
go build -tags=jsoniter -ldflags "$LD_FLAGS -X 'github.com/0xJacky/Nginx-UI/settings.buildTime=$(date +%s)'" -o nginx-ui -v main.go

Linux 用スクリプト

基本的な使い方

インストールとアップグレード

bash -c "$(curl -L https://cloud.nginxui.com/install.sh)" @ install

デフォルトのリスニングポートは9000、デフォルトのHTTPチャレンジポートは9180です。 ポートが競合する場合は、/usr/local/etc/nginx-ui/app.iniを手動で変更してから、 systemctl restart nginx-uiを実行してNginx UIサービスを再読み込みしてください。

設定ファイルとデータベースファイルを除いてNginx UIを削除する

bash -c "$(curl -L https://cloud.nginxui.com/install.sh)" @ remove
その他の使い方
bash -c "$(curl -L https://cloud.nginxui.com/install.sh)" @ help

Nginxリバースプロキシ設定の例

server {
    listen          80;
    listen          [::]:80;

    server_name     <your_server_name>;
    rewrite ^(.*)$  https://$host$1 permanent;
}

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server {
    listen  443       ssl;
    listen  [::]:443  ssl;
    http2   on;

    server_name         <your_server_name>;

    ssl_certificate     /path/to/ssl_cert;
    ssl_certificate_key /path/to/ssl_cert_key;

    location / {
        proxy_set_header    Host                $host;
        proxy_set_header    X-Real-IP           $remote_addr;
        proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header    X-Forwarded-Proto   $scheme;
        proxy_http_version  1.1;
        proxy_set_header    Upgrade             $http_upgrade;
        proxy_set_header    Connection          $connection_upgrade;
        proxy_pass          http://127.0.0.1:9000/;
    }
}

コントリビューション

コントリビューションがあるからこそ、オープンソースコミュニティは学び、刺激を受け、創造するための素晴らしい場所になります。どのようなコントリビューションも大歓迎です。

改善案がある場合は、リポジトリをフォークしてプルリクエストを作成してください。「enhancement」タグを付けてイシューを作成するだけでも構いません。このプロジェクトにスターを付けることもお忘れなく!改めて、ありがとうございます!

  1. プロジェクトをフォークする
  2. フィーチャーブランチを作成する(git checkout -b feature/AmazingFeature)
  3. 変更をコミットする(git commit -m 'Add some AmazingFeature')
  4. ブランチにプッシュする(git push origin feature/AmazingFeature)
  5. プルリクエストを作成する

ライセンス

このプロジェクトは、LICENSEファイルに記載されているGNU Affero General Public License v3.0ライセンスのもとで提供されます。このプロジェクトを使用、配布、またはコントリビューションすることで、このライセンスの利用規約に同意したものとみなされます。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。