项目地址:https://github.com/jason5ng32/MyIP具体的部署如下:
1、搭建站点,我这边采用docker部署方式,登录到服务器后执行下列命令安装docker;
wget -qO- get.docker.com | bash
systemctl start docker
systemctl enable docker2、执行下列命令部署MyIP项目,项目运行在18966端口,服务器中需放行该端口网络;
docker run -d -p 18966:18966 --name myip --restart always jason5ng32/myip:latest3、在浏览器中输入 服务器IP地址:18966 即可访问,当然也可以通过域名反代的形式访问,或在运行docker时添加环境变量,比如:
docker run -d -p 18966:18966 \
-e BING_MAP_API_KEY="YOUR_KEY_HERE" \
-e ALLOWED_DOMAINS="itbulu.com" \
-e IPChecking_API="YOUR_TOKEN_HERE" \
--name myip \
jason5ng32/myip:latest你可以不添加环境变量直接使用,但是如果你想使用一些高级功能,可以添加下面的环境变量:
| 变量名 | 是否必须 | 默认值 | 说明 |
|---|---|---|---|
| PORT | 否 | 18966 | 程序运行的端口 |
| BING_MAP_API_KEY | 否 | "" | Bing 地图的 API Key,用于展示 IP 所在地的地图 |
| ALLOWED_DOMAINS | 否 | "" | 允许访问的域名,用逗号分隔,用于防止后端 API 被滥用 |
| IPChecking_API_KEY | 否 | "" | IPCheck.ing 的 API Key,用于获取精准的 IP 归属地信息 |
| IPINFO_API_TOKEN | 否 | "" | IPInfo.io 的 API Token,用于通过 IPInfo.io 获取 IP 归属地信息 |
| KEYCDN_USER_AGENT | 否 | "" | KeyCDN 的 User Agent,用于通过 KeyCDN 获取 IP 归属地信息 |
| CLOUDFLARE_API | 否 | "" | Cloudflare 的 API Key,用于通过 Cloudflare 获取 AS 系统的信息 |
| VITE_RECAPTCHA_SITE_KEY | 否 | "" | Google reCAPTCHA 的 Site Key,用于在前端显示 reCAPTCHA 验证 |
| RECAPTCHA_SECRET_KEY | 否 | "" | Google reCAPTCHA 的 Secret Key,用于在后端验证 reCAPTCH |