import{_ as e,c as a,o as t,a as n}from"./app.61cf6d09.js";const k='{"title":"\u51C6\u5907\u5DE5\u4F5C","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u51C6\u5907\u5DE5\u4F5C","slug":"\u51C6\u5907\u5DE5\u4F5C"},{"level":2,"title":"\u83B7\u53D6Github/Jihulab\u7684Client ID\u548C\u5BC6\u94A5","slug":"\u83B7\u53D6github-jihulab\u7684client-id\u548C\u5BC6\u94A5"},{"level":2,"title":"\u5728\u670D\u52A1\u5668\u4E2D\u5B89\u88C5Dashboard","slug":"\u5728\u670D\u52A1\u5668\u4E2D\u5B89\u88C5dashboard"},{"level":2,"title":"\u914D\u7F6E\u53CD\u5411\u4EE3\u7406","slug":"\u914D\u7F6E\u53CD\u5411\u4EE3\u7406"},{"level":2,"title":"\u5728\u5B9D\u5854\u9762\u677F\u4E2D\u914D\u7F6ESSL","slug":"\u5728\u5B9D\u5854\u9762\u677F\u4E2D\u914D\u7F6Essl"},{"level":2,"title":"FAQ","slug":"faq"},{"level":3,"title":"\u6211\u5BF9\u9762\u677F\u63D0\u4F9B\u7684\u6570\u636E\u4FEE\u6539/\u589E\u52A0\u529F\u80FD\u4E0D\u6EE1\u610F\uFF0C\u6211\u60F3\u8981\u81EA\u5DF1\u4FEE\u6539/\u589E\u52A0\u6570\u636E\u600E\u4E48\u529E\uFF1F","slug":"\u6211\u5BF9\u9762\u677F\u63D0\u4F9B\u7684\u6570\u636E\u4FEE\u6539-\u589E\u52A0\u529F\u80FD\u4E0D\u6EE1\u610F\uFF0C\u6211\u60F3\u8981\u81EA\u5DF1\u4FEE\u6539-\u589E\u52A0\u6570\u636E\u600E\u4E48\u529E\uFF1F"},{"level":3,"title":"\u6570\u636E\u5E93\u4E2D\u5404\u8868/\u5217\u662F\u4EC0\u4E48\u610F\u601D\uFF1F","slug":"\u6570\u636E\u5E93\u4E2D\u5404\u8868-\u5217\u662F\u4EC0\u4E48\u610F\u601D\uFF1F"},{"level":3,"title":"Dashboard \u4F1A\u81EA\u52A8\u66F4\u65B0\u5417\uFF1F","slug":"dashboard-\u4F1A\u81EA\u52A8\u66F4\u65B0\u5417\uFF1F"},{"level":3,"title":"\u5982\u4F55\u66F4\u65B0 Dashboard\uFF1F","slug":"\u5982\u4F55\u66F4\u65B0-dashboard\uFF1F"}],"relativePath":"guide/dashboard.md","lastUpdated":1655898610000}',s={},o=n(`
\u642D\u5EFA\u4E00\u4E2A\u54EA\u5412\u76D1\u63A7\uFF0C\u4F60\u9700\u8981\uFF1A
TIP
\u5982\u679C\u4F60\u60F3\u4F7F\u7528CDN\uFF0C\u8BF7\u51C6\u5907\u4E24\u4E2A\u57DF\u540D\uFF0C\u4E00\u4E2A\u914D\u7F6E\u597DCDN\u7528\u4F5C\u516C\u5F00\u8BBF\u95EE\uFF0CCDN\u9700\u8981\u652F\u6301WebSocket\u534F\u8BAE\uFF1B\u53E6\u4E00\u4E2A\u57DF\u540D\u4E0D\u8981\u4F7F\u7528CDN\uFF0C\u7528\u4F5CAgent\u7AEF\u4E0EDashboard\u7684\u901A\u4FE1
\u672C\u6587\u6863\u5206\u522B\u4EE5 "cdn.example.com" \u548C "data.example.com" \u4E24\u4E2A\u57DF\u540D\u6765\u6F14\u793A
TIP
\u5982\u679C\u60A8\u4F4D\u4E8E\u4E2D\u56FD\u5927\u9646\uFF0C\u8BBF\u95EE Github \u6709\u56F0\u96BE\uFF0C\u6211\u4EEC\u5EFA\u8BAE\u60A8\u9009\u62E9 Jihulab \u4F5C\u4E3AOAuth\u63D0\u4F9B\u5546
\u672C\u6587\u6863\u5C06\u4EE5\u5B9D\u5854\u9762\u677F\u53CD\u4EE3\u9762\u677F\u7684\u8FC7\u7A0B\u4F5C\u4E3A\u8303\u4F8B\uFF0C\u968F\u7740\u672A\u6765\u7248\u672C\u7684\u53D8\u5316\uFF0C\u90E8\u5206\u529F\u80FD\u7684\u5165\u53E3\u53EF\u80FD\u4F1A\u53D1\u751F\u6539\u53D8\uFF0C\u672C\u6587\u6863\u4EC5\u4F9B\u53C2\u8003
\u54EA\u5412\u76D1\u63A7\u63A5\u5165Github\u3001Gitlab\u3001Jihulab\u3001Gitee\u4F5C\u4E3A\u540E\u53F0\u7BA1\u7406\u5458\u8D26\u53F7
Application name
- \u968F\u610F\u586B\u5199Homepage URL
- \u586B\u5199\u9762\u677F\u7684\u8BBF\u95EE\u57DF\u540D\uFF0C\u5982\uFF1A"http://cdn.example.com"Authorization callback URL
- \u586B\u5199\u56DE\u8C03\u5730\u5740\uFF0C\u5982\uFF1A"http://cdn.example.com/oauth2/callback"Redirect URL
\u4E2D\u5E94\u586B\u5165\u56DE\u8C03\u5730\u5740\u8303\u56F4
\u4E2D\u52FE\u9009 read_user
\u548C read_api
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh
\u5982\u679C\u4F60\u7684\u9762\u677F\u670D\u52A1\u5668\u4F4D\u4E8E\u4E2D\u56FD\u5927\u9646\uFF0C\u53EF\u4EE5\u4F7F\u7528\u955C\u50CF\uFF1A
curl -L https://jihulab.com/nezha/nezha/-/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
\u7B49\u5F85Docker\u5B89\u88C5\u5B8C\u6BD5\u540E\uFF0C\u5206\u522B\u8F93\u5165\u4EE5\u4E0B\u503C\uFF1AOAuth\u63D0\u4F9B\u5546
- Github\uFF0CGitlab\uFF0CJihulab\uFF0CGitee\u4E2D\u9009\u62E9\u4E00\u4E2AClient ID
- \u4E4B\u524D\u4FDD\u5B58\u7684Client IDClient Secret
- \u4E4B\u524D\u4FDD\u5B58\u7684\u5BC6\u94A5\u7528\u6237\u540D
- OAuth\u63D0\u4F9B\u5546\u4E2D\u7684\u7528\u6237\u540D\u7AD9\u70B9\u6807\u9898
- \u81EA\u5B9A\u4E49\u7AD9\u70B9\u6807\u9898\u8BBF\u95EE\u7AEF\u53E3
- \u516C\u5F00\u8BBF\u95EE\u7AEF\u53E3\uFF0C\u53EF\u81EA\u5B9A\u4E49\uFF0C\u9ED8\u8BA48008Agent\u7684\u901A\u4FE1\u7AEF\u53E3
- Agent\u4E0EDashboard\u7684\u901A\u4FE1\u7AEF\u53E3\uFF0C\u9ED8\u8BA45555
\u8F93\u5165\u5B8C\u6210\u540E\uFF0C\u7B49\u5F85\u62C9\u53D6\u955C\u50CF
\u5B89\u88C5\u7ED3\u675F\u540E\uFF0C\u5982\u679C\u4E00\u5207\u6B63\u5E38\uFF0C\u6B64\u65F6\u4F60\u53EF\u4EE5\u8BBF\u95EE\u57DF\u540D+\u7AEF\u53E3\u53F7\uFF0C\u5982 \u201Chttp://cdn.example.com:8008\u201D \u6765\u67E5\u770B\u9762\u677F
\u5C06\u6765\u5982\u679C\u9700\u8981\u518D\u6B21\u8FD0\u884C\u811A\u672C\uFF0C\u53EF\u4EE5\u8FD0\u884C\uFF1A
./nezha.sh
\u6765\u6253\u5F00\u7BA1\u7406\u811A\u672C
\u5728\u5B9D\u5854\u9762\u677F\u4E2D\u65B0\u5EFA\u4E00\u4E2A\u7AD9\u70B9\uFF0C\u57DF\u540D\u586B\u5199\u516C\u5F00\u8BBF\u95EE\u57DF\u540D\uFF0C\u5982 \u201Chttp://cdn.example.com\u201C \uFF0C\u7136\u540E\u70B9\u51FB\u201C\u8BBE\u7F6E\u201D\u8FDB\u5165\u7AD9\u70B9\u8BBE\u7F6E\u9009\u9879\uFF0C\u9009\u62E9\u201C\u53CD\u5411\u4EE3\u7406\u201D - \u201C\u65B0\u5EFA\u53CD\u5411\u4EE3\u7406\u201D
\u81EA\u5B9A\u4E49\u4E00\u4E2A\u4EE3\u7406\u540D\u79F0\uFF0C\u5728\u4E0B\u65B9\u201C\u76EE\u6807URL\u201D\u4E2D\u586B\u5165 http://127.0.0.1
\u7136\u540E\u70B9\u51FB\u201C\u4FDD\u5B58\u201D
\u6253\u5F00\u521A\u521A\u65B0\u5EFA\u7684\u53CD\u5411\u4EE3\u7406\u53F3\u8FB9\u7684\u201C\u914D\u7F6E\u6587\u4EF6\u201D\uFF0C\u5C06\u914D\u7F6E\u6587\u4EF6\u66FF\u6362\u4E3A\u4EE5\u4E0B\u5185\u5BB9\uFF1A
#PROXY-START/
location / {
proxy_pass http://127.0.0.1:8008;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
}
location ~ ^/(ws|terminal/.+)$ {
proxy_pass http://127.0.0.1:8008;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
}
#PROXY-END/
CaddyServer v1\uFF08v2 \u65E0\u9700\u7279\u522B\u914D\u7F6E\uFF09
proxy /ws http://ip:8008 {
websocket
header_upstream -Origin
}
proxy /terminal/* http://ip:8008 {
websocket
header_upstream -Origin
}
\u9996\u5148\uFF0C\u5148\u6682\u65F6\u5173\u95ED\u53CD\u5411\u4EE3\u7406
\u6B63\u5982\u5728\u5176\u4ED6\u7F51\u7AD9\u4E2D\u914D\u7F6ESSL\u8BC1\u4E66\u4E00\u6837\uFF0C\u8FDB\u5165\u7AD9\u70B9\u8BBE\u7F6E\u4E2D\u7684\u201CSSL\u201D\uFF0C\u4F60\u53EF\u4EE5\u9009\u62E9\u81EA\u52A8\u7533\u8BF7 Let\xB4s Encrypt \u8BC1\u4E66\u6216\u624B\u52A8\u914D\u7F6E\u5DF2\u6709\u7684\u8BC1\u4E66
\u5B8C\u6210SSL\u7684\u8BBE\u7F6E\u540E\uFF0C\u4F60\u9700\u8981\u56DE\u5230 https://github.com/settings/developers \uFF0C\u7F16\u8F91\u4E4B\u524D\u521B\u5EFA\u7684\u9A8C\u8BC1\u5E94\u7528\u7A0B\u5E8F\uFF0C\u5C06\u4E4B\u524D\u6211\u4EEC\u586B\u5165\u7684"Homepage URL"\u548C"Authorization callback URL"\u4E2D\u7684\u57DF\u540D\u5168\u90E8\u4ECEhttp
\u6539\u4E3Ahttps
\uFF0C\u5982\uFF1A"https://cdn.example.com" \u548C "https://cdn.example.com/oauth2/callback" \uFF0C\u4E0D\u66F4\u6539\u6B64\u9879\u53EF\u80FD\u4F1A\u5BFC\u81F4\u4F60\u65E0\u6CD5\u767B\u5F55\u9762\u677F\u540E\u53F0
\u5E38\u89C1\u4E8E\u6279\u91CF\u63D2\u5165 Agent \u7B49\u9700\u6C42\u4E2D\uFF0C\u53EF\u4EE5\u76F4\u63A5\u4FEE\u6539\u6570\u636E\u5E93\u3002
\u8BF7\u6CE8\u610F\uFF0C\u6570\u636E\u5E93\u4E2D\u5E76\u975E\u4EC0\u4E48\u90FD\u53EF\u4EE5\u4FEE\u6539\uFF0C\u9519\u8BEF\u7684\u4FEE\u6539\u4F1A\u5BFC\u81F4\u6570\u636E\u6DF7\u4E71\u65E0\u6CD5\u542F\u52A8Dashboard\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\u6570\u636E\u5E93\uFF01
WARNING
\u518D\u91CD\u590D\u4E00\u904D\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\u6570\u636E\u5E93\uFF01
\u5982\u9700\u8981\u5728\u6570\u636E\u5E93\u4E2D\u4FEE\u6539\u6570\u636E\uFF0C\u8BF7\u5148\u505C\u6B62\u9762\u677F\u5BB9\u5668\u518D\u4FEE\u6539\u3002
\u6570\u636E\u5E93\u7C7B\u578B\u662F sqlite3\uFF0C\u4F4D\u4E8E /opt/nezha/dashboard/data/sqlite.db
\uFF0C\u4FEE\u6539\u524D\u8BF7\u5907\u4EFD
\u6587\u6863\u4E0D\u63D0\u4F9B\u6570\u636E\u5E93\u89E3\u91CA\uFF0C\u6709\u80FD\u529B\u4FEE\u6539\u6570\u636E\u5E93\u7684\u7A0D\u52A0\u5206\u6790\u5E94\u8BE5\u5C31\u8DB3\u4EE5\u770B\u61C2\u3002
Agent\u901A\u5E38\u60C5\u51B5\u4E0B\u4F1A\u81EA\u52A8\u66F4\u65B0\uFF0C\u4F46Dashboard\u5E76\u4E0D\u4F1A\uFF0C\u9700\u8981\u624B\u52A8\u66F4\u65B0\u3002
\u8FD0\u884C\u811A\u672C ./nezha.sh
\uFF0C\u9009\u62E9\u91CD\u542F\u9762\u677F\u5E76\u66F4\u65B0