一. 安装

官网下载安装最新版本

二. 配置

1. 用户名和邮箱配置

1
2
3
4
5
# 配置全局用户名和邮箱
git config --global user.name "vbcc2001"
git config --global user.email "[email protected]"
# 配置禁止自动转换换行格式
git config --global core.autocrlf false

2. SSH 私钥配置

在用户文件下创建.ssh/id_rsa 文件,用记事本编辑,将私钥复杂到 id_rsa 文件

一. 安装

1. 创建目录

安装目录:D:\nodejs
缓存目录:D:\nodejs\node_cache
全局安装目录: D:\nodejs\node_global

2. 下载ZIP版本,解压安装

官网下载安装最新 ZIP 版本,如18版本解压到 D:\nodejs\node-v18.13.0-win-x64

二. 配置

1. 配置环境变量

通过 PowerShell(系统管理员)配置 NODE_HOME、NODE_PATH、PATH

1
2
3
4
5
6
7
8
9
$node_home = "D:\nodejs\node-v18.13.0-win-x64"
$node_path = "D:\nodejs\node_global\node_modules"
# 环境变量NODE_HOME设置
[Environment]::SetEnvironmentVariable("NODE_HOME", "$node_home", 'Machine')
# 环境变量NODE_PATH设置
[Environment]::SetEnvironmentVariable("NODE_PATH", "$node_path", 'Machine')
# 环境变量PATH添加%NODE_HOME%条目 setx /M PATH "%path%;%NODE_HOME%"有很大问题,会丢失原来的Path,所有通过PowerShell命令安装
$PATH = [Environment]::GetEnvironmentVariable("PATH")
if( $PATH -notlike "*"+$node_home+"*" ){ [Environment]::SetEnvironmentVariable("PATH", "$PATH;$node_home", 'Machine') }

2. 安装包、缓存配置

在安装目录下,新建两个文件夹  node_global(全局包存放目录) 和  node_cache(缓存目录);

1
2
3
4
5
6
7
8
9
10
$node_base_path = "D:\nodejs"
cd $node_base_path
mkdir node_global
mkdir node_cache
npm config set prefix $node_base_path\node_global
npm config set cache $node_base_path\node_cache
# 通过翻墙比较好 不建议设置 registry
# npm config set registry "https://registry.npm.taobao.org/"
# 查看
npm config get
1
2
3
4
# 修改安装源(国内网络不好,可以说试几次)
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
# 安装
sudo apt-get install -y nodejs

1. APT默认安装

1
2
3
# 默认版本是v12
sudo apt install nodejs
sudo apt install npm

2. 使用n包升级 NodeJs

1
2
3
4
5
6
# 全局安装n包 
sudo npm install -g n
# 升级到 LTS 版本
n lts
# 升级最近版
n latest

Frp 代理内网服务

一. 说明

Frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

Frp 采用 Golang 编写,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。

Frp 分为客户端和服务端2个应用,要配置使用。服务端安装在代理服务器,客户端安装在被代理服务器。

项目地址:https://github.com/fatedier/frp

一. 下载

Release页面中下载到最新版本的客户端和服务端二进制文件

二. 安装

解压缩下载的压缩包,将其中的 frpc 拷贝到内网服务所在的机器(被代理服务器)上,将 frps 拷贝到具有公网 IP 的机器(代理服务器)上,放置在任意目录。

三. 运行服务端

1
2
3
4
5
6
# 直接运行
./frps -c ./frps.ini
# 后台运行
nohup ./frps -c ./frps.ini &
# 通过 systemd 服务运行,见下个章节

四. 配置 Systemd 服务

编辑 service 配置文件

1
vim /etc/systemd/system/frps.service

写入内容如下

1
2
3
4
5
6
7
8
9
10
11
12
13
[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /usr/bin/frps -c /etc/frp/frps.ini

[Install]
WantedBy = multi-user.target

管理服务端

1
2
3
4
5
6
7
8
9
10
# 启动frp
systemctl start frps
# 停止frp
systemctl stop frps
# 重启frp
systemctl restart frps
# 查看frp状态
systemctl status frps
# 配置 frps 开机自启
systemctl enable frps

五. frps.ini 配置 参考

1
2
3
4
5
6
7
[common]
bind_port = 7001
dashboard_port = 7500
vhost_http_port = 7600
token = X789456123!@
dashboard_user = frp123
dashboard_pwd = X789456123!@

六. 运行客户端

在windows系统下,可通过创建frpc.bat运行。

frpc.bat 配置参考

1
2
3
4
5
@echo off
D:
cd D:\frp_0.50.0_windows_amd64
frpc.exe
cmd

frpc.ini 配置参考

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[common]
server_addr = 101.33.218.47
server_port = 7001
token = X789456123!@
tls_enable = true

[DES-WEB]
type = tcp
local_ip = 127.0.0.1
local_port = 5580
remote_port = 5580

[DES]
type = tcp
local_ip = 127.0.0.1
local_port = 5558
remote_port = 5558

Window系统下JDK安装配置

一. 安装

官网下载安装 ZIP 版本,解压到安装文件夹。

如 JDK17 下载地址: https://download.oracle.com/java/17/latest/jdk-17_windows-x64_bin.zip

二. 配置

1. 配置环境变量

通过 PowerShell(管理员)工具配置 JAVA_HOME、PATH 及 JAVA_TOOL_OPTIONS

1
2
3
4
5
6
7
8
9
10
11
12
# 配置JAVA_HOME,假设JDK解压路径为 "D:\java\jdk-17.0.5"
$java_path = "D:\java\jdk-17.0.5"
[Environment]::SetEnvironmentVariable("JAVA_HOME", "$java_path", 'Machine')

# 配置PATH
$PATH = [Environment]::GetEnvironmentVariable("PATH")
if( $PATH -notlike "*"+$java_path+"*" ){
[Environment]::SetEnvironmentVariable("PATH", "$PATH;$java_path\bin", 'Machine')
}

# 配置 JAVA_TOOL_OPTIONS (根据实际需求配置)
[Environment]::SetEnvironmentVariable("JAVA_TOOL_OPTIONS", "-Dfile.encoding=UTF-8", 'Machine')