import{_ as n,c as a,o as s,a as t}from"./app.3817bf4e.js";const h='{"title":"\u4E00\u952E\u5B89\u88C5 Agent","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u4E00\u952E\u5B89\u88C5 Agent","slug":"\u4E00\u952E\u5B89\u88C5-agent"},{"level":3,"title":"\u51C6\u5907\u5DE5\u4F5C","slug":"\u51C6\u5907\u5DE5\u4F5C"},{"level":3,"title":"\u5728 Linux \u4E2D\u4E00\u952E\u5B89\u88C5 (Ubuntu\u3001Debian\u3001CentOS)","slug":"\u5728-linux-\u4E2D\u4E00\u952E\u5B89\u88C5-ubuntu\u3001debian\u3001centos"},{"level":3,"title":"\u5728 Windows \u4E2D\u4E00\u952E\u5B89\u88C5","slug":"\u5728-windows-\u4E2D\u4E00\u952E\u5B89\u88C5"},{"level":2,"title":"\u5176\u4ED6\u65B9\u5F0F\u5B89\u88C5 Agent","slug":"\u5176\u4ED6\u65B9\u5F0F\u5B89\u88C5-agent"},{"level":3,"title":"\u5728 Linux \u4E2D\u5B89\u88C5Agent (Ubuntu\u3001Debian\u3001CentOS)","slug":"\u5728-linux-\u4E2D\u5B89\u88C5agent-ubuntu\u3001debian\u3001centos"},{"level":3,"title":"\u5728 \u5176\u4ED6 Linux \u5982 Alpine \u4F7F\u7528 Openrc \u7684\u53D1\u884C\u7248 \u5B89\u88C5 Agent","slug":"\u5728-\u5176\u4ED6-linux-\u5982-alpine-\u4F7F\u7528-openrc-\u7684\u53D1\u884C\u7248-\u5B89\u88C5-agent"},{"level":3,"title":"\u5728 Windows \u4E2D\u5B89\u88C5Agent","slug":"\u5728-windows-\u4E2D\u5B89\u88C5agent"},{"level":3,"title":"\u5728 MacOS \u4E2D\u5B89\u88C5Agent","slug":"\u5728-macos-\u4E2D\u5B89\u88C5agent"},{"level":3,"title":"\u5728 OpenWRT \u4E2D\u5B89\u88C5 Agent","slug":"\u5728-openwrt-\u4E2D\u5B89\u88C5-agent"},{"level":2,"title":"FAQ","slug":"faq"},{"level":3,"title":"Agent \u6709 Docker \u955C\u50CF\u5417\uFF1F","slug":"agent-\u6709-docker-\u955C\u50CF\u5417\uFF1F"}],"relativePath":"guide/agent.md","lastUpdated":1671640155000}',e={},p=t(`

\u54EA\u5412\u76D1\u63A7\u7684\u88AB\u63A7\u7AEF\u670D\u52A1\u88AB\u79F0\u4E3A Agent\uFF0C\u672C\u6587\u6863\u5C06\u4ECB\u7ECD\u5982\u4F55\u5728\u88AB\u63A7\u7AEF\u670D\u52A1\u5668\u4E0A\u5B89\u88C5 Agent\uFF0C\u5E76\u4E0E Dashboard \u8FDE\u63A5

\u4E00\u952E\u5B89\u88C5 Agent

\u76EE\u524D\u54EA\u5412\u76D1\u63A7\u5DF2\u652F\u6301\u5728 Windows \u548C Linux\u4E0A\u4E00\u952E\u5B89\u88C5 Agent\uFF0C\u9075\u5FAA\u672C\u6587\u6863\u7684\u6B65\u9AA4\uFF0C\u4F60\u53EF\u4EE5\u5F88\u8F7B\u677E\u7684\u5728\u670D\u52A1\u5668\u4E0A\u90E8\u7F72\u5B83

\u51C6\u5907\u5DE5\u4F5C

\u4F60\u9700\u8981\u63D0\u524D\u5728\u7BA1\u7406\u9762\u677F\u4E2D\u8BBE\u7F6E\u597D\u901A\u4FE1\u57DF\u540D\uFF0C\u6B64\u57DF\u540D\u4E0D\u53EF\u4EE5\u63A5\u5165CDN\uFF0C\u8FD9\u91CC\u4EE5\u524D\u9762\u63D0\u5230\u8FC7\u7684\u793A\u4F8B\u901A\u4FE1\u57DF\u540D \u201Cdata.example.com\u201D \u6765\u505A\u6F14\u793A
\u8FDB\u5165\u540E\u53F0\u7BA1\u7406\u9762\u677F\uFF0C\u8F6C\u5230\u201C\u8BBE\u7F6E\u201D\u9875\uFF0C\u5728\u201C\u672A\u63A5\u5165 CDN \u7684\u9762\u677F\u670D\u52A1\u5668\u57DF\u540D/IP\u201D\u9879\u4E2D\u586B\u5165\u901A\u4FE1\u57DF\u540D\uFF0C\u7136\u540E\u70B9\u51FB"\u4FDD\u5B58"

\u5728 Linux \u4E2D\u4E00\u952E\u5B89\u88C5 (Ubuntu\u3001Debian\u3001CentOS)

\u5728 Windows \u4E2D\u4E00\u952E\u5B89\u88C5

\u5176\u4ED6\u65B9\u5F0F\u5B89\u88C5 Agent

\u5728 Linux \u4E2D\u5B89\u88C5Agent (Ubuntu\u3001Debian\u3001CentOS)

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\u88AB\u63A7\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

\u5728 \u5176\u4ED6 Linux \u5982 Alpine \u4F7F\u7528 Openrc \u7684\u53D1\u884C\u7248 \u5B89\u88C5 Agent

\u672C\u8282\u5185\u5BB9\u7531 unknown0054 \u8D21\u732E

cat >/etc/init.d/nezha-agent<< EOF
#!/sbin/openrc-run
SERVER="" #Dashboard \u5730\u5740 ip:port
SECRET="" #SECRET
TLS="" # \u662F\u5426\u542F\u7528 tls \u662F "--tls" \u5426\u7559\u7A7A
NZ_BASE_PATH="/opt/nezha"
NZ_AGENT_PATH="\${NZ_BASE_PATH}/agent"
pidfile="/run/\${RC_SVCNAME}.pid"
command="/opt/nezha/agent/nezha-agent"
command_args="-s \${SERVER}  -p \${SECRET} \${TLS}"
command_background=true
depend() {
	need net
}
checkconfig() {
	GITHUB_URL="github.com"
	if [ ! -f "\${NZ_AGENT_PATH}/nezha-agent" ]; then
		if [[ $(uname -m | grep 'x86_64') != "" ]]; then
			os_arch="amd64"
		elif [[ $(uname -m | grep 'i386\\|i686') != "" ]]; then
			os_arch="386"
		elif [[ $(uname -m | grep 'aarch64\\|armv8b\\|armv8l') != "" ]]; then
			os_arch="arm64"
		elif [[ $(uname -m | grep 'arm') != "" ]]; then
			os_arch="arm"
		elif [[ $(uname -m | grep 's390x') != "" ]]; then
			os_arch="s390x"
		elif [[ $(uname -m | grep 'riscv64') != "" ]]; then
			os_arch="riscv64"
		fi
		local version=$(curl -m 10 -sL "https://api.github.com/repos/naiba/nezha/releases/latest" | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}' | sed 's/\\"//g;s/,//g;s/ //g')
		if [ ! -n "$version" ]; then
			version=$(curl -m 10 -sL "https://fastly.jsdelivr.net/gh/naiba/nezha/" | grep "option\\.value" | awk -F "'" '{print $2}' | sed 's/naiba\\/nezha@/v/g')
		fi
		if [ ! -n "$version" ]; then
			version=$(curl -m 10 -sL "https://gcore.jsdelivr.net/gh/naiba/nezha/" | grep "option\\.value" | awk -F "'" '{print $2}' | sed 's/naiba\\/nezha@/v/g')
		fi
		if [ ! -n "$version" ]; then
			echo -e "\u83B7\u53D6\u7248\u672C\u53F7\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u672C\u673A\u80FD\u5426\u94FE\u63A5 https://api.github.com/repos/naiba/nezha/releases/latest"
			return 0
		else
			echo -e "\u5F53\u524D\u6700\u65B0\u7248\u672C\u4E3A: \${version}"
		fi
		wget -t 2 -T 10 -O nezha-agent_linux_\${os_arch}.zip https://\${GITHUB_URL}/naiba/nezha/releases/download/\${version}/nezha-agent_linux_\${os_arch}.zip >/dev/null 2>&1
		if [[ $? != 0 ]]; then
			echo -e "Release \u4E0B\u8F7D\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u672C\u673A\u80FD\u5426\u8FDE\u63A5 \${GITHUB_URL}\${plain}"
			return 0
		fi
		mkdir -p $NZ_AGENT_PATH
		chmod 755 -R $NZ_AGENT_PATH
		unzip -qo nezha-agent_linux_\${os_arch}.zip && mv nezha-agent $NZ_AGENT_PATH && rm -rf nezha-agent_linux_\${os_arch}.zip README.md
	fi
	if [ ! -x "\${NZ_AGENT_PATH}/nezha-agent" ]; then
		chmod +x \${NZ_AGENT_PATH}/nezha-agent
	fi
}
start_pre() {
	if [ "\${RC_CMD}" != "restart" ]; then
		checkconfig || return $?
	fi
}
EOF

\u5728 Windows \u4E2D\u5B89\u88C5Agent

\u5728 MacOS \u4E2D\u5B89\u88C5Agent

\u672C\u8282\u5185\u5BB9\u6539\u7F16\u81EAMitsea Blog\uFF0C\u6539\u7F16\u5DF2\u83B7\u5F97\u539F\u4F5C\u8005\u6388\u6743

WARNING

\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u5982\u63D0\u793A\u201CmacOS \u65E0\u6CD5\u9A8C\u8BC1\u6B64 app\u201C\uFF0C\u8BF7\u524D\u5F80\u7CFB\u7EDF\u8BBE\u7F6E\u624B\u52A8\u5141\u8BB8\u7A0B\u5E8F\u8FD0\u884C

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>KeepAlive</key>
	<true/>
	<key>Label</key>
	<string>nezha_agent</string>
	<key>Program</key>
	<string>\u5728\u8FD9\u91CC\u4FEE\u6539 Agent \u4E8C\u8FDB\u5236\u6587\u4EF6\u7684\u7684\u8DEF\u5F84\uFF0C\u5982\uFF1A/Users/123/Downloads/nezha-agent</string>
	<key>ProgramArguments</key>
	<array>
		<string>\u5728\u8FD9\u91CC\u4FEE\u6539 Agent \u4E8C\u8FDB\u5236\u6587\u4EF6\u7684\u7684\u8DEF\u5F84\uFF0C\u540C\u4E0A</string>
		<string>--password</string>
		<string>\u901A\u4FE1\u5BC6\u94A5\uFF0C\u5982\uFF1A529664783eeb23cc25</string>
		<string>--server</string>
		<string>\u901A\u4FE1\u7F51\u5740\u548CRPC\u7AEF\u53E3\uFF0C\u5982:data.example.com:5555</string>
	</array>
	<key>RunAtLoad</key>
	<true/>
</dict>
</plist>
launchctl load /Users/123/Desktop/nezha_agent.plist
launchctl start nezha_agent
launchctl list | grep nezha_agent
launchctl stop nezha_agent
launchctl remove nezha_agent

\u5728 OpenWRT \u4E2D\u5B89\u88C5 Agent

\u5982\u4F55 \u4E00\u6B65\u5230\u4F4D,\u89E3\u51B3\u5B89\u88C5\u8FC7\u7A0B\u7591\u96BE\u6742\u75C7

\u5982\u4F55\u4F7F \u65E7\u7248 OpenWRT/LEDE \u81EA\u542F\u52A8

\u5982\u4F55\u4F7F \u65B0\u7248 OpenWRT \u81EA\u542F\u52A8\uFF1F\u6765\u81EA @\u827E\u65AF\u5FB7\u65AF

#!/bin/sh /etc/rc.common

START=99
USE_PROCD=1

start_service() {
 procd_open_instance
 procd_set_param command /root/nezha-agent -s \u9762\u677F\u901A\u4FE1\u5730\u5740:\u7AEF\u53E3 -p \u79D8\u94A5 -d
 procd_set_param respawn
 procd_close_instance
}

stop_service() {
    killall nezha-agent
}

restart() {
 stop
 sleep 2
 start
}

FAQ

Agent \u6709 Docker \u955C\u50CF\u5417\uFF1F

Agent \u76EE\u524D\u6CA1\u6709\u63A8\u51FA Docker \u955C\u50CF\u3002
Agent \u7684\u8BBE\u8BA1\u601D\u8DEF\u548C Dashboard \u76F8\u53CD\uFF0CDashboard \u8981\u5C3D\u53EF\u80FD\u4E0D\u5F71\u54CD\u5BBF\u4E3B\u673A\u5DE5\u4F5C\uFF0C\u4F46 Agent \u5219\u9700\u8981\u5728\u5BBF\u4E3B\u673A\u4E2D\u6267\u884C\u76D1\u63A7\u670D\u52A1\u548C\u8FD0\u884C\u547D\u4EE4\u3002
\u5C06 Agent \u653E\u5165\u5BB9\u5668\u4E2D\u786E\u5B9E\u53EF\u4EE5\u7EE7\u7EED\u6267\u884C\u76D1\u63A7\u4EFB\u52A1\uFF0C\u4F46 WebShell \u7B49\u529F\u80FD\u65E0\u6CD5\u6B63\u5E38\u8FD0\u884C\uFF0C\u56E0\u6B64\u4E0D\u63D0\u4F9B Docker \u955C\u50CF\u3002

`,50),o=[p];function l(c,i,r,u,k,g){return s(),a("div",null,o)}var b=n(e,[["render",l]]);export{h as __pageData,b as default};