打开 “懒猫微服客户端” 下载应用

局域网端口转发工具

端口映射

5612 次下载
5 次点赞
1 条评论
0 次催更
官方应用
5612

安装次数

5

点赞

1

应用评论

0

催更次数

桌面端

移动端

应用描述

用于映射微服中其他容器与应用的端口至局域网端口

相关攻略

用自己的域名实现内外网无缝访问懒猫微服内的应用

# 背景 目前使用懒猫微服已经成功替代我之前的 NAS 成为家庭服务中心了,使用懒猫微服客户端的场景下,默认就是不需要关注内外网,都能够直接访问到我的服务, 但是有一些服务使用第三方,或者原生的客户端,而且本身也有认证功能的情况,就需要一些适配工作, 使用第三方服务自身的认证加上 HTTPS,从而不需要登录懒猫客户端也能无视内外网访问应用。 好在懒猫微服商店的有足够的应用,很大程度的降低的配置的复杂度。 目标效果如下: 1. 无论在家里局域网,还是出门公网,都可以访问服务 2. 使用同一个域名自动适配内外网 3. 使用 HTTPS 加应用自身认证保证安全 # 准备工作 当然,如果想要很方便的访问到内网的服务,还是有一些前置的依赖项的: 1. 自己拥有域名并托管到 cloudflare 上,在此教程中以 example.com 举例 2. 最好的有自己的 ssl 证书,使用 let's encrypt 获取不复杂,在此教程中先默认有证书可用。 补充一句,如果确实没有 ssl 证书,可以考虑使用自签证书。 除了以上依赖,还用到了以下几个应用: https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.cloudfalredweb https://appstore.lazycat.cloud/#/shop/detail/app.ikw.lzc.caddy https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward 使用 Jellyfin 作为示例: https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.jellyfinsingle 然后我们就可以开始配置工作。 # 安装 ## 1. 配置端口转发,打通跨应用访问 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward ### 目标服务转发 因为涉及不同的服务进行内外网转发,所以首先我们要将希望转发的服务,通过端口转发工具,转发至微服虚拟网卡,以便转发服务能访问到目标服务。 此处以 Jellyfin 为例,转发 `8096` 端口至 `host.lzcapp:8096`,端口不一定需要一样,不冲突即可。 ![CleanShot 2025-04-30 at 12.00.50@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/299/f5993f9a-01c3-4f68-aa0f-7095b3c3260f.png "CleanShot 2025-04-30 at 12.00.50@2x.png") ### Caddy 局域网内端口转发 由于我们还希望在内网的时候可以方便的访问各种服务,所以需要配置一个 Caddy 局域网端口,作为统一入口。 由于我们需要使用 HTTPS,所以一定需要使用 443 端口。 ![CleanShot 2025-04-30 at 12.42.06@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/299/d6255182-77ed-4825-92e9-498b31ed1e49.png "CleanShot 2025-04-30 at 12.42.06@2x.png") ## 2. 配置 Cloudflared,打通公网访问 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.cloudfalredweb 参考[官方教程](https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/),配置 Cloudflared Tunnel 连通域名到懒猫微服的公网访问。 需要注意的是安装 cloudflared 时,直接安装懒猫微服商店中的 Cloudflared 即可。 当连接成功后,选择 `Public Hostname`, ![CleanShot 2025-04-30 at 12.11.13@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/299/45aaff55-7a6f-460f-9b64-9b9e9c867f60.png "CleanShot 2025-04-30 at 12.11.13@2x.png") 并新增一个自定义子域名,例如 `movie.example.com`,然后保存即可。 ![CleanShot 2025-04-30 at 12.22.09@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/299/7a4f054f-db0b-4c78-b77b-5234d542f769.png "CleanShot 2025-04-30 at 12.22.09@2x.png") 此时,你应该已经拥有可以公网直接访问的 Jellyfin 了,而且自带了 HTTPS ![CleanShot 2025-04-30 at 12.25.51@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/299/a848b72f-29cc-42fd-a70c-4eba09427e90.png "CleanShot 2025-04-30 at 12.25.51@2x.png") ## 3. 配置 Caddy,打通内网访问 通过 Cloudflare Tunnel,我们已经可以通过公网访问 Jellyfin 了,但是我们肯定不希望在家里的时候,也走公网绕一圈,所以我们可以通过 Caddy,实现无缝内网访问。 https://appstore.lazycat.cloud/#/shop/detail/app.ikw.lzc.caddy Caddy 通过配置文件进行转发配置,配置文件位于 Caddy 的应用数据下 `Caddyfile/Caddyfile`, 首先将 ssl 证书也放到 Caddyfile 文件夹下, 然后加入以下内容,最后重启 Caddy 即可: ```Caddyfile movie.example.com { tls /etc/caddy/example.com.crt /etc/caddy/example.com.key reverse_proxy host.lzcapp:8096 } ``` 注意: 1. 第一行是 tls 配置,路径不要写错,`Caddyfile` 文件夹是映射至服务内 `/etc/caddy` 的 2. 第二行是转发配置,`reverse_proxy` 是固定的,域名和端口是前文配置的 ## 4. 路由器配置域名转发 由于域名托管在 Cloudflare,并且进行了 Tunnel 的配置,域名已经默认指向 Cloudflare, 但是我们回到家时,希望直接访问内网,所以需要在路由器上将域名指向懒猫的 IP。 不同的路由器配置方式不同,用户根据自己的路由器配置解析即可。 # 结语 到此,我们完成了所有配置,实现效果如下: 1. 无需启动懒猫微服客户端 2. 公网时,自动通过 Cloudflare Tunnel 访问服务 3. 内网时,自动通过内网访问服务 4. 全程 HTTPS 加密

如何用BackVault备份VaultWarden数据

# 准备工作 ## 获取VaultWarden的API Key 首先打开应用 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.vaultwarden 登录账号,进入主界面 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/75efc74b-8d48-4b86-b649-bfa9c822b138.png "image.png") 点击左侧**Settings**,点击**Security**,点击右侧**Keys**,再点击下方的**View API Key**。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/fc1f4897-c0fb-4060-ae03-5b3117712cbd.png "image.png") 输入你的账号密码后, 就会出现下方的API Key。我们需要用到**Client ID**和**Client Secret**这两个值,复制保留。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/1bfecc3d-d4b3-4787-b43b-5743077ad787.png "image.png") ## 端口转发配置 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward 打开端口转发工具,配置VaultWarden端口,可参考下图 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/12a798fb-7409-44ff-9080-b1e76e8fd97e.png "image.png") # 备份操作 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.backvault 打开应用,需要进行配置向导设置。 服务地址填入刚才配置的端口转发地址,其余配置按需修改,也可按照默认进行。 ![CleanShot 2025-11-17 at 18.35.17@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/41fe0e8c-6ce6-4d27-b960-af6d7f16c6a5.png "CleanShot 2025-11-17 at 18.35.17@2x.png") 进入应用后,需要按照下图进行以下配置: > **Bitwarden Client ID**:上面获取Client ID > **Bitwarden Client Secret**:上面获取的Client Secret > **Bitwarden Master Password**: ValutWarden的登录密码 > **Backup File Password**:备份文件加密密码(可选) ![CleanShot 2025-11-17 at 18.37.25@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/aba14e9c-5397-4dd4-b42d-c327aefa1f4a.png "CleanShot 2025-11-17 at 18.37.25@2x.png") 配置完之后,点击**Initialize**,如果无误,就会显示下图,就表示配置成功了,可以关闭页面了。 ![CleanShot 2025-11-17 at 18.40.16@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/07d0344a-2823-4adb-a037-3dcfecd12c18.png "CleanShot 2025-11-17 at 18.40.16@2x.png") # 备份文件路径 打开懒猫网盘,左侧点击应用数据,找到**BackVault**,点击进入 ![CleanShot 2025-11-17 at 18.42.49@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/8a4d57fb-fa9c-47df-af99-70cfa4a9359e.png "CleanShot 2025-11-17 at 18.42.49@2x.png") 然后选择**backup**文件,就可以看到刚才备份的加密文件了。 ![CleanShot 2025-11-17 at 18.41.48@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/63015f42-c7e2-41a6-b0df-daf00775386c.png "CleanShot 2025-11-17 at 18.41.48@2x.png") # 如何解密文件 我这边以macos系统上操作为示例: 1. 确保你已经安装了python,没有可用以下指令安装 ``` brew install python ``` 2. 创建并激活虚拟环境(可选但推荐) ``` python3 -m venv ~/backvault-decrypt source ~/backvault-decrypt/bin/activate ``` 3. 用 pip 安装 cryptography,显示successfully就表示成功安装了。 ``` pip install cryptography ``` ![CleanShot 2025-11-17 at 18.55.20@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/d4767a04-78c8-49d5-afcc-622f6ada8344.png "CleanShot 2025-11-17 at 18.55.20@2x.png") 4. 新建文件 decrypt.py,粘贴下面脚本并保存,我这边文件是保存在桌面,与上面下载的加密文件位置一致。 ``` # decrypt.py import sys from getpass import getpass from cryptography.hazmat.primitives.ciphers.aead import AESGCM from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC from cryptography.hazmat.primitives import hashes from cryptography.exceptions import InvalidTag SALT_SIZE = 16 NONCE_SIZE = 12 TAG_SIZE = 16 KEY_SIZE = 32 PBKDF2_ITERATIONS = 600000 # 若你在 VaultWarden 改过迭代次数,这里也要改;没改就按照默认值 def decrypt_data(encrypted_data: bytes, password: str) -> bytes: salt = encrypted_data[:SALT_SIZE] nonce = encrypted_data[SALT_SIZE:SALT_SIZE+NONCE_SIZE] ciphertext_with_tag = encrypted_data[SALT_SIZE+NONCE_SIZE:] ciphertext = ciphertext_with_tag[:-TAG_SIZE] tag = ciphertext_with_tag[-TAG_SIZE:] kdf = PBKDF2HMAC(algorithm=hashes.SHA256(), length=KEY_SIZE, salt=salt, iterations=PBKDF2_ITERATIONS) key = kdf.derive(password.encode("utf-8")) aesgcm = AESGCM(key) return aesgcm.decrypt(nonce, ciphertext + tag, None) if __name__ == "__main__": if len(sys.argv) < 2: print(f"Usage: python {sys.argv[0]} <encrypted_file> [password]") sys.exit(1) file_path = sys.argv[1] password = sys.argv[2] if len(sys.argv) > 2 else getpass("Enter backup password: ") try: with open(file_path, "rb") as f: encrypted_contents = f.read() decrypted_json = decrypt_data(encrypted_contents, password) out_path = file_path.rsplit(".", 1)[0] + ".json" with open(out_path, "w", encoding="utf-8") as wf: wf.write(decrypted_json.decode("utf-8")) print(f"Decryption OK -> {out_path}") except InvalidTag: print("Decryption failed: Invalid password or corrupted file.") except Exception as e: print(f"An error occurred: {e}") ``` 5. 运行以下脚本,对应替换decrypt.py路径,文件路径和文件加密密码,见下图 ``` python “decrypt.py路径” "你的Backup File路径" "你的Backup File Password,如上面没配置,就不需要" ``` 6. 比如我这边是都放在了桌面,然后就得到了解密后的json文件,也在同一路径下。 ![CleanShot 2025-11-17 at 19.03.17@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/90570f65-4e9d-4ac0-a0ab-9c12701243f2.png "CleanShot 2025-11-17 at 19.03.17@2x.png") ![CleanShot 2025-11-17 at 19.04.40@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/f5f5560f-41ac-4ef8-a05b-da9dd5ac6b23.png "CleanShot 2025-11-17 at 19.04.40@2x.png") 打开json文件,可**Ctrl+F**,就可以看到你需要的网站账号密码了。 ![CleanShot 2025-11-17 at 19.10.07@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/8b44a60a-b392-447d-81b8-4196ae332174.png "CleanShot 2025-11-17 at 19.10.07@2x.png") **注意:应用关闭再打开后,会显示502,属于正常现象。因为软件已经配置成功,转为后台服务,可查看应用日志看进程,也可以到懒猫网盘,应用数据下看到新生成的备份文件,见下图。** ![CleanShot 2025-11-17 at 19.20.25@2x.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/e6683a81-6b17-4b24-ad36-2eecc16c8f82.png "CleanShot 2025-11-17 at 19.20.25@2x.png")

微服网络隔离,如何实现应用互联?

**懒猫微服平台中的应用默认享有网络隔离,类似Docker容器间隔离。若需两个应用互访,可通过端口转发工具配置实现。** [以Radarr和Jackett为例](https://playground.lazycat.cloud/#/guideline/295) **端口转发部分配置** 在懒猫商店下载局域网端口转发工具,用于映射Jackett应用端口被Radarr访问 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward 局域网网路地址: ```bash 局域网出口类型:选择"微服虚拟网卡(仅微服应用容器内可访问)" 微服虚拟网卡:host.lzcapp 端口:9117(建议与应用内) ``` 目标转发地址: ```bash 转发目标类型:选择"微服应用" 微服应用:选择"Jackett"(这里注意一定看一下Jackett的状态是否running,如果显示stopped,关闭"端口转发应用"在重新打开 server tcp 9117 ``` ![image-20250409132826584](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/395/20250605165748100.png?imageSlim) ![image-20250409133207899](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/395/20250605165748088.png?imageSlim) 配置完成后测试连接——>并保存 ## Radarr软件 Jackett软件配置完成后,从商店中查找并安装Radarr软件。下载安装完成后对其进行相关配置。 - 下载客户端 软件上架时会将下载器一起打包,所以这里就不需要配置下载器了,默认已经配置完成。下载器默认下载的路径为 “/home/下载” 目录。 ![Snipaste_2023-07-26_10-48-17.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/395/20250605165748081.png?imageSlim "Snipaste_2023-07-26_10-48-17.png") - 索引器 点击索引器按钮菜单,点击“添加索引器”按钮,选择“Torznab”进行相关配置。 填写相关参数: ```bash 名称:建议填写Jackett中Indexer的名称 URL:点击Jackett中Indexer的Copy Torznab Feed 这里需要注意,默认复制出来的域名是https://jackett.微服名.heiyu.space/api/v2.0/indexers/Indexer名/results/torznab/ 需要修改两处:"https"改为"http";"jackett.微服名.heiyu.space"改为"host.lzcapp:9117" API Key:Jackett中左上角复制填入 ``` ![Snipaste_2023-07-26_10-55-53.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/395/20250605165748160.png?imageSlim "Snipaste_2023-07-26_10-55-53.png") URL和API Key填写成功以后,点击“Categories”会自动弹出列表,在列表中选择需要的分类。 ![image-20250409140008473](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/395/20250605165748091.png?imageSlim) ![Snipaste_2023-07-26_10-57-43.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/395/20250605165748113.png?imageSlim "Snipaste_2023-07-26_10-57-43.png") 添加完成后点击测试,没有问题后点击保存,按照上面的方法可以添加多个索引。 ![image-20250409143145101](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/395/20250605165748647.png?imageSlim)

出差也能像在公司内网开发:懒猫微服端口转发 + PortProxyGUI 实录

如果你出差、在家办公,不在公司内网,却还要做微服务开发联调,这篇可能有用。我会按真实场景写:如何访问内网网关、Nacos、Swagger、业务系统,以及如何让内网网关回调你本地正在开发的服务。文中示例地址已做脱敏处理,你按自己环境替换即可。 --- https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward ## 一、要解决的问题 我平时做微服务开发,人在公司内网时很简单:前端调 **网关**,后端服务注册到 **Nacos**,网关再按注册信息调用各个后端服务。需要看接口时打开 Swagger,需要看业务效果时打开内网页面。 但出差或在家时,电脑不在公司内网里,会遇到两个方向的问题: - **我访问不到公司内网资源**:比如网关、Nacos、数据库、Redis、RabbitMQ。 - **公司内网也访问不到我本地服务**:我本地服务虽然启动了,但如果注册到 Nacos 的是家里 WiFi / 本地宽带 IP,内网网关根本调不到。 - ![拓扑-无法直连.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/48273475-e200-472c-9795-2f05aa8eff05.png "拓扑-无法直连.png") 这篇用 **懒猫微服私有云 + 局域网端口转发工具 + PortProxyGUI**,把这两个方向都打通。最后效果是:人不在公司内网,也可以像在公司一样做微服务联调。 文中为了好理解,把公司内网里的中转机器叫 **同事电脑**。实际使用时,不一定非要占用同事的主力电脑,也可以在公司放一台性能一般的 Windows 小主机、旧笔记本、迷你主机,当作 **内网代理机**。只要它常开、能访问内网服务、能登录懒猫微服客户端,就能承担同样的中转作用。 ![懒猫微服-私有云设备.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/248ccab1-54d1-4321-96c0-55da1c95c0de.png "懒猫微服-私有云设备.png") --- ## 二、本文使用的打码示例 下面所有地址都已经打码,只保留结构和端口,方便替换成自己的环境。 | 角色 | 打码示例 | 说明 | | --------------------- | --------------------------- | ----------------------------------------------- | | 内网网关 | `10.*.*.10:8701` | 公司内网网关地址 | | 懒猫转发后的网关 | `example.heiyu.space:18701` | 出差电脑访问这个地址 | | Nacos | `10.*.*.11:8848` | 公司内网 Nacos 地址 | | 懒猫转发后的 Nacos | `example.heiyu.space:8048` | 出差电脑访问这个地址 | | 同事电脑 / 内网代理机 | `10.*.*.20` | 公司内网里常开的 Windows 电脑,可以是低配小主机 | | 我本地服务端口 | `18503` | 我电脑上正在开发的后端服务端口 | | 其他内网服务 | `10.*.*.12:7038` 等 | 数据库、Redis、RabbitMQ、其他 HTTP 服务同理 | 核心原则: - 我主动访问内网资源:用懒猫微服把内网服务转发成 `example.heiyu.space:端口`。 - 内网服务器主动访问我:让服务器先访问同事电脑或内网代理机 `10.*.*.20:端口`,这台中转机再通过 `PortProxyGUI` 和懒猫通道转给我。 --- ## 三、先看整体拓扑 ### 3.1 我访问公司内网资源 我在外网,不能直接访问内网网关、Nacos 等服务。做法是: ```text 我的电脑 → 懒猫微服私有云 → 同事电脑/内网代理机/在线客户端 → 公司内网服务 ``` ![拓扑-情况一去程.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/0b038103-3af5-4b7c-8845-2313fc28515a.png "拓扑-情况一去程.png") ### 3.2 公司内网访问我本地服务 我本地服务启动后,内网网关要调用它。但内网服务器访问不到我的家庭宽带 IP,所以需要走回程: ```text 内网服务器 → 同事电脑/内网代理机(PortProxyGUI/netsh)→ 懒猫微服 → 我的电脑本地服务 ``` ![拓扑-情况二回程.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/46b46fae-05c0-48b1-a203-91aa7ff17b48.png "拓扑-情况二回程.png") ### 3.3 打通后就是开发闭环 去程解决“我访问内网”,回程解决“内网访问我”。两个方向都通之后,前端、本地后端、网关、Nacos、内网服务就能形成闭环。 ![拓扑-双向环路.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/60810ca3-684b-43eb-8b58-f21acf254588.png "拓扑-双向环路.png") --- ## 四、前置条件 ### 4.1 同事电脑 / 内网代理机 这台电脑必须在公司内网里,且能访问网关、Nacos 等内网服务。 - [ ] Windows 电脑常开,能访问 `10.*.*.10:8701`、`10.*.*.11:8848` - [ ] 安装并登录懒猫微服客户端 - [ ] 在局域网端口转发工具里能看到需要转发的在线客户端设备 - [ ] 有管理员权限,方便配置 PortProxyGUI / netsh / 防火墙 不要求和我的电脑登录同一个账号。局域网端口转发工具可以选择当时在线的账号设备,只要目标设备在列表里在线可选即可。 更推荐准备一台低配 Windows 代理机放在公司内网里,专门负责中转: - 性能要求不高,能稳定运行懒猫微服客户端、PortProxyGUI 即可; - 最好插电、有线网络、不要休眠; - 能访问网关、Nacos、数据库、Redis、RabbitMQ 等你要转发的内网服务; - 不跑业务,只做中转,后期排错也更清楚。 ### 4.2 我的出差电脑 - [ ] 安装并登录懒猫微服客户端 - [ ] 本地前端、后端开发环境能启动 - [ ] 本地服务端口固定,比如本文示例 `18503` ### 4.3 24 小时在线设置 如果这套链路要长时间使用,同事电脑或内网代理机不能休眠。Windows 11 可以这样设置: 1. 打开 **设置** → **系统** → **电源和电池** 2. 展开 **屏幕、睡眠和休眠超时** 3. 在 **已接通电源** 下,将 **使我的设备在以下时间后进入睡眠状态** 设为 **从不** ![步骤-Windows11电源不休眠.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/6c11cae3-4413-4e63-bfe0-ae93553e5392.png "步骤-Windows11电源不休眠.png") 其他 Windows 版本路径可能不同,搜索 **睡眠** 或 **接通电源** 找到对应设置即可。 --- ## 五、情况一:把内网网关转发出来 我的第一个需求是访问公司内网网关。真实地址已经打码,结构如下: ```text 内网网关:10.*.*.10:8701 转发后:example.heiyu.space:18701 ``` 这样我在外网浏览器、前端项目、接口工具里访问 `example.heiyu.space:18701`,实际访问的就是公司内网网关 `10.*.*.10:8701`。 ### 5.1 出口配置:使用微服域名 在 **局域网端口转发工具** 中编辑转发规则: - 协议:`TCP` - 局域网入口类型:选择 **微服域名** - 出口地址:`example.heiyu.space` - 监听端口:`18701` ![步骤-网关转发-出口配置-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/0bb68049-187c-4b16-a5e8-63b294b8cfbf.png "步骤-网关转发-出口配置-打码.png") 这里的 `18701` 是我为了对应网关端口 `8701` 额外选的外部端口。你可以换成其他未占用端口,但建议有规律,后面维护会轻松很多。 ### 5.2 目标配置:指向内网网关 目标配置选择 **微服客户端**,然后填内网网关地址: - 转发目标类型:**微服客户端** - 客户端设备:选择在线的内网客户端设备 - 目标 IP:`10.*.*.10` - 目标端口:`8701` ![步骤-网关转发-目标配置-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/97f6c100-cecb-492a-a108-d69d0646808a.png "步骤-网关转发-目标配置-打码.png") 点击 **测试目标连接**,提示目标地址连接正常,就说明这条链路已经通了。 ![步骤-网关转发-测试成功-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/034cf9a5-6ac1-4104-bfb2-d4fd4dc787fe.png "步骤-网关转发-测试成功-打码.png") --- ## 六、情况二:把 Nacos 转发出来 微服务开发离不开 Nacos。我的 Nacos 在内网里,打码后结构如下: ```text 内网 Nacos:10.*.*.11:8848 转发后:example.heiyu.space:8048 ``` 流程和网关完全一样,只是端口不同。 ### 6.1 Nacos 出口配置 - 协议:`TCP` - 局域网入口类型:**微服域名** - 出口地址:`example.heiyu.space` - 监听端口:`8048` ![步骤-Nacos转发-出口配置-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/ebf971f3-6b55-4d62-8c4b-97a47bae31ab.png "步骤-Nacos转发-出口配置-打码.png") ### 6.2 Nacos 目标配置 - 转发目标类型:**微服客户端** - 目标 IP:`10.*.*.11` - 目标端口:`8848` ![步骤-Nacos转发-测试成功-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/6bdf8175-1d1b-421b-a6c2-dcc8bca59f23.png "步骤-Nacos转发-测试成功-打码.png") 测试通过后,浏览器打开: ```text http://example.heiyu.space:8048/nacos/ ``` 能看到 Nacos 登录页,就说明 Nacos 也可以在外网访问了。 ![步骤-Nacos登录成功-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/0f5bb364-2dae-4980-8c48-c9ae468cf314.png "步骤-Nacos登录成功-打码.png") --- ## 七、其他内网服务也一样 网关和 Nacos 通了之后,其他服务的转发方式完全一样: | 服务类型 | 内网地址示例 | 转发后示例 | 说明 | | -------- | ---------------- | --------------------------- | -------------------------- | | 网关 | `10.*.*.10:8701` | `example.heiyu.space:18701` | 前端、本地服务主要调用它 | | Nacos | `10.*.*.11:8848` | `example.heiyu.space:8048` | 注册中心 / 配置中心 | | 数据库 | `10.*.*.12:3306` | `example.heiyu.space:13306` | 客户端连接即可 | | Redis | `10.*.*.13:6379` | `example.heiyu.space:16379` | 注意密码和环境隔离 | | RabbitMQ | `10.*.*.14:5672` | `example.heiyu.space:15672` | 管理端口和 AMQP 端口分开配 | 技巧是:**一个内网服务对应一条转发规则**。只要同事电脑或内网代理机能访问这个服务,懒猫微服就可以把它转发出来。 --- ## 八、前端怎么用转发后的网关 前端本地开发时,把原本指向公司内网网关的地址,改成懒猫转发后的域名即可。 ```text 原来(公司内网):http://10.*.*.10:8701 现在(出差外网):http://example.heiyu.space:18701 ``` ![步骤-前端配置-微服网关-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/a96ad456-9768-43eb-aa5c-5ba87239b9ed.png "步骤-前端配置-微服网关-打码.png") 这样前端仍然调网关,由网关再去调内网里的其他微服务。对前端同事来说,开发体验和人在公司内网基本一样。 实际验证时,我打开了 Swagger 页面,也能正常看到网关下的接口信息。 ![步骤-Swagger访问成功-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/0639fc27-b178-4f5d-8661-34184476b3c1.png "步骤-Swagger访问成功-打码.png") 业务页面也可以正常打开。 ![步骤-业务系统访问成功-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/a3971d77-cd8f-434c-b2c6-765f66d1bd2f.png "步骤-业务系统访问成功-打码.png") 再看浏览器 DevTools,接口请求返回 `200 OK`,说明页面不是“只打开了壳”,而是真的能调到接口。 ![步骤-接口请求200-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/ad5dc479-31c3-4b18-8bd2-1f7e4560351f.png "步骤-接口请求200-打码.png") --- ## 九、回程:让内网网关调用我本地服务 只解决“我访问内网”还不够。微服务开发还有一个关键点:**我本地服务要注册进 Nacos,并被内网网关调用。** 问题在于: - 我本地服务跑在出差电脑上,例如端口 `18503` - 如果注册到 Nacos 的地址是家里 WiFi / 本地宽带 IP,内网网关访问不到 - 所以注册地址不能写我自己的本地 IP,而要写 **公司内网里可访问的同事电脑 / 内网代理机 IP** 本文打码示例: ```text 同事电脑 / 内网代理机 IP:10.*.*.20 我的本地服务端口:18503 注册到 Nacos 的地址:10.*.*.20:18503 ``` 也就是说,内网网关以为它在调用公司内网里的中转机: ```text 网关 → 10.*.*.20:18503 ``` 但这台同事电脑或内网代理机收到请求后,会通过 PortProxyGUI / netsh 和懒猫通道,把请求转发到我的出差电脑本地服务。 ### 9.1 本地服务端口固定 本地后端服务先固定端口,例如 `18503`。 ![步骤-服务端口配置-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/53d6fedf-a2f9-4532-937a-4ed131784ae5.png "步骤-服务端口配置-打码.png") 如果你的服务端口经常变,回程转发就会很麻烦。建议本地联调期间固定端口。 ### 9.2 注册 IP 写同事电脑 / 内网代理机 IP 本地服务注册到 Nacos 时,注册 IP 写同事电脑或内网代理机在公司内网里的 IP,例如: ```yaml server: port: 18503 spring: cloud: nacos: discovery: ip: 10.*.*.20 ``` 这一步的意思是:让内网网关调用 `10.*.*.20:18503`,不要让它调用我的家庭宽带 IP。 ### 9.3 中转机用 PortProxyGUI 做系统级转发 在同事电脑或内网代理机上,用 `PortProxyGUI` 添加规则: ```text 监听地址:0.0.0.0 监听端口:18503 转发地址:127.0.0.1 转发端口:18503 ``` ![步骤-PortProxyGUI-回程转发-打码.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/332/0cbd1712-95e5-48c9-b0e0-8cf3ea427570.png "步骤-PortProxyGUI-回程转发-打码.png") 等价命令是: ```bat netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=18503 connectaddress=127.0.0.1 connectport=18503 ``` `PortProxyGUI` 只是把 `netsh interface portproxy` 做成了图形界面,适合不想记命令的同事使用。注意:**PortProxyGUI 不会自动配置 Windows 防火墙**,如果公司内网访问不到 `10.*.*.20:18503`,要检查这台中转机的 Windows 防火墙是否放行 `18503`。 更完整的 Windows 端口代理工具说明,可看我之前写的:[Windows 网络转发工具推荐:从命令行到图形界面](https://xie.infoq.cn/article/3330ef787c942f0510e049e00)。 ### 9.4 回程链路实际长这样 完整回程是: ```text 内网网关 → 同事电脑/内网代理机 10.*.*.20:18503 → PortProxyGUI / netsh 转到 127.0.0.1:18503 → 懒猫微服客户端通道 → 我的出差电脑 127.0.0.1:18503 ``` 这样内网网关就能调到我本地正在开发的服务。 --- ## 十、常见问题 | 现象 | 优先排查 | | -------------------------------------- | ------------------------------------------------------------ | | 转发工具测试目标失败 | 同事电脑或内网代理机是否能访问目标内网 IP/端口;目标服务是否启动 | | 外网打不开 `example.heiyu.space:18701` | 规则是否启用;端口是否填错;客户端是否在线 | | Nacos 能打开但服务注册异常 | 本地服务注册 IP 是否写成同事电脑 / 内网代理机 IP;端口是否固定 | | 网关调不到我本地服务 | PortProxyGUI 规则是否启用;中转机防火墙是否放行端口;懒猫客户端是否在线 | | 页面打开但接口失败 | 前端配置里是否仍有内网 IP;DevTools 看接口是否走转发域名 | | 用一会儿断开 | 同事电脑或内网代理机是否睡眠;Windows 电源设置是否为“从不睡眠” | --- ## 十一、小结 这套方案的核心不是“单纯远程访问一个网页”,而是解决微服务开发里的两条链路: 1. **我访问内网资源**:网关、Nacos、数据库、Redis、RabbitMQ 都可以通过懒猫微服转发成 `example.heiyu.space:端口`。 2. **内网访问我本地服务**:把本地服务注册成同事电脑 / 内网代理机 IP,再由这台中转机用 PortProxyGUI / netsh + 懒猫通道转回我的电脑。 最后效果就是:人不在公司内网,也能完成前端、后端、网关、Nacos、业务页面的闭环联调。 --- ## 文末信息 测试环境:Windows 11 · 懒猫微服客户端 · 局域网端口转发工具 · PortProxyGUI。 关联应用:[局域网端口转发工具 cloud.lazycat.app.forward](https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward) 应用商店:[https://appstore.lazycat.cloud/](https://appstore.lazycat.cloud/) Windows 端口代理工具:[PortProxyGUI](https://github.com/zmjack/PortProxyGUI) 延伸阅读:[Windows 网络转发工具推荐:从命令行到图形界面](https://xie.infoq.cn/article/3330ef787c942f0510e049e00) --- *本文为个人使用经验;菜单名、域名格式以你当前客户端为准。所有截图均已打码,示例 IP/域名仅表示结构,不代表真实环境。*

利用 OpenVSCode Server 打造远程开发环境

## 简介 OpenVSCode Server 是 VSCode 的浏览器化版本,只需要一个容器即可在任意设备上获得接近桌面版的开发体验。这正好可以把开发环境托管在懒猫微服里,通过浏览器随时接入。 本文围绕懒猫微服给出一套完整的 OpenVSCode Server 部署玩法:从选择合适的镜像、准备项目文件、到构建自定义镜像与端口转发,帮助你把懒猫微服升级成随取随用的远程开发工作站。 ----- ## 版本选择 目前社区比较主流的有两个镜像来源,它们都能在懒猫微服上顺利运行,但侧重点略有差异: - Gitpod 官方镜像:https://github.com/gitpod-io/openvscode-server - 更新节奏快,第一时间同步上游 OpenVSCode Server 的功能与安全修复 - 预装扩展较少,适合作为「白纸」按需扩展;默认容器用户为 `openvscode-server` - 如果你打算完全自定义开发工具链、自己管理依赖,这个版本更容易作为基线 - LinuxServer 社区镜像:https://github.com/linuxserver/docker-openvscode-server - 内建 `linuxserver.io` 家族常见的 `PUID` / `PGID` 权限管理,适合多用户或需要和主机目录共享文件的场景 - 额外提供健康检查、日志目录等默认配置,上手即用但镜像体积略大 - 如果你希望少改动、快速使用并保留 LinuxServer 生态的一致体验,可以选择它 无论选择哪一版,都建议先按文档演练一次原始镜像的部署流程;后续需要扩展开发工具时再基于原镜像构建自定义版本即可。 ----- ## 0. 准备工作 搭建开发环境,详细的步骤请参考官方的开发者手册:https://developer.lazycat.cloud/lzc-cli.html ----- ## 1. 让 OpenVSCode Server 跑起来 先准备三个文件: - `logo.png` 这是应用图标 - `lzc-build.yml` 这是构建时的配置文件,里面只需要简单的写如下内容即可: ```yml pkgout: ./ icon: ./logo.png ``` - `lzc-manifest.yml` 这是最重要的应用设置: ```yml lzc-sdk-version: '0.1' name: MyDevBox package: my.devbox version: 1.103.1 description: My Dev Box application: background_task: true subdomain: devbox routes: - /=http://openvscode_server.my.devbox.lzcapp:3000 services: openvscode_server: image: gitpod/openvscode-server:latest container_name: openvscode_server environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC - CONNECTION_TOKEN= #optional - CONNECTION_SECRET= #optional - SUDO_PASSWORD=password #optional - SUDO_PASSWORD_HASH= #optional binds: - /lzcapp/var/config:/config - /lzcapp/var/workspace:/home/workspace ports: - 3000:3000 restart: unless-stopped ``` 然后通过下面的命令把应用安装到懒猫微服中(请确保你的电脑已经连接了懒猫微服): ```sh lzc-cli project build lzc-cli app install ./my-dev-box-v1.103.1.lpk ``` 运行完成后,我们就可以在应用列表上看到刚才上传的应用了。 ![1761014939638.jpg](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/978af226-b1a7-4eef-87f1-6360151c2185.jpg "1761014939638.jpg") 注意,应用启动时,会去拉取镜像,如果你所在的网络不幸拉取失败: ![1761015797124.jpg](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/7bb57b8e-9778-48e5-b283-5849546ab71b.jpg "1761015797124.jpg") 可以试试下面的解决方式: ```sh lzc-cli appstore copy-image gitpod/openvscode-server:latest ``` 输入完用户名和密码后它会自动拉取,完成后会给你返回一个懒猫镜像仓库的地址 ``` 登录成功! uploading ... b268dd24: [####################################################################################################] 100% uploaded: registry.lazycat.cloud/scarlex/gitpod/openvscode-server:4ced994585627e2b ``` 我们可以使用这个镜像地址: ```diff services: openvscode-server: - image: gitpod/openvscode-server:latest + image: registry.lazycat.cloud/scarlex/gitpod/openvscode-server:4ced994585627e2b ``` 然后重新运行刚才的 `lzc-cli` 构建和安装应用的命令即可。 当应用成功运行后,我们就能看到 OpenVSCode Server 的界面了: ![1761016450557.jpg](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/46909e77-247b-44fd-a80e-a59b7ef6e702.jpg "1761016450557.jpg") 对于开发者来说,我们经常在终端中运行常用的命令(如 `node`、`pnpm` 等),官方镜像并不会为我们预先安装这些命令: ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/b3361ae8-dd7c-4732-ab66-257f19e3678c.png "image.png") 这时候我们就需要添加自定义的部分了。 ----- ## 2. 自定义开发环境 要在 OpenVSCode Server 中添加自定义的工具,正确的做法是构建自定义镜像。在官方仓库的文档中建议我们通过这种方式去构建镜像: ```dockerfile FROM gitpod/openvscode-server:latest USER root RUN ... USER openvscode-server ``` 先切换成 `root` 用户,然后执行自定义的命令,最后切换会 `openvscode-server` 用户。 这是面向生产环境的建议,作为开发环境,我认为直接使用 `root` 用户会更加方便。 (~~我就是被 `openvscode-server` 的用户权限虐得不行才改用 `root` 的~~) ### 自定义 Docker 镜像 我们先创建一份 `Dockerfile`: ```dockerfile FROM gitpod/openvscode-server:latest USER root # 更新包列表并安装必要的依赖 RUN sed -i "s/deb.debian.org/mirrors.ustc.edu.cn/g" "/etc/apt/sources.list" && \ sed -i "s/archive.ubuntu.com/mirrors.ustc.edu.cn/g" "/etc/apt/sources.list" && \ sed -i "s/security.ubuntu.com/mirrors.ustc.edu.cn/g" "/etc/apt/sources.list" && \ apt-get update && \ curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - && \ apt-get install -y nodejs zsh && \ rm -rf /var/lib/apt/lists/* ENV NPM_HOME="/root/.local/share/npm" ENV PNPM_HOME="/root/.local/share/pnpm" ENV PATH="$PNPM_HOME:$NPM_HOME/bin:$PATH" RUN npm config set prefix $NPM_HOME && \ npm config set registry https://registry.npmmirror.com && \ npm install -g pnpm@latest-10 && \ pnpm config set store-dir $PNPM_HOME/store ``` 这份 `Dockerfile` 包含这些功能: - 改用清华的源,加速 `apt-get` - 安装 `node.js` 和 `pnpm` - 设置缓存目录,方便重用依赖 然后创建一份 `build-docker-image.sh`,把构建命令添加到里面后我们就能方便调试了 ```sh USERNAME="lzc" APPNAME="openvscode-server-devbox" BOXNAME=$(lzc-cli box default) docker build --platform linux/amd64 -t lzc/$APPNAME:latest . --no-cache docker tag $USERNAME/$APPNAME:latest dev.$BOXNAME.heiyu.space/$USERNAME/$APPNAME:latest docker push dev.$BOXNAME.heiyu.space/$USERNAME/$APPNAME:latest ``` 它主要干了两件事: - 构建自定义镜像 - 把构建好的镜像推送到懒猫微服中(注意 `USERNAME` 必须为 `lzc`, `APPNAME` 随意) 为它添加可执行权限并运行: ```sh chmod +x ./build-docker-image.sh ./build-docker-image.sh ``` 运行成功后会看到这样的输出 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/bae38ed8-4a1c-4223-9740-ea1b52c87c92.png "image.png") ### 使用自定义镜像 这时候我们需要修改 `lzc-manifest.yaml` 文件 ```yaml lzc-sdk-version: '0.1' name: DevBox package: my.devbox version: 1.103.1 description: My Dev Box application: background_task: true subdomain: devbox routes: - /=http://openvscode_server.my.devbox.lzcapp:3000 services: openvscode_server: image: dev.<DEVICE>.heiyu.space/lzc/openvscode-server-devbox:latest container_name: openvscode_server environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC - CONNECTION_TOKEN= #optional - CONNECTION_SECRET= #optional - SUDO_PASSWORD=password #optional - SUDO_PASSWORD_HASH= #optional binds: - /lzcapp/var/config:/config - /lzcapp/var/workspace:/home/workspace - /lzcapp/var/pnpm-store:/root/.local/share/pnpm/store user: root restart: unless-stopped ``` 注意两个地方: - `image` 改成 `dev.$BOXNAME.heiyu.space/$USERNAME/$APPNAME:latest` 的值 - `user` 改成 `root` 然后运行刚才的安装脚本 ```sh lzc-cli project build lzc-cli app install ./my-dev-box-v1.103.1.lpk ``` 打开懒猫微服中的 DevBox ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/6ea21db2-02bd-4512-83b0-196b76996e60.png "image.png") 我们刚才的改动生效了。 试试使用 pnpm 创建项目并运行一下: ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/0251255f-3984-4aea-a931-e93abd63ab0e.png "image.png") 我们启动了 vite 服务器,暴露了 5173 端口,这时候通过浏览器域名访问该端口 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/046eb14a-c9cf-4cbd-8be9-6d116f50dcc7.png "image.png") 这时候是无法从外部访问的。 ### 3. 局域网端口转发 #### 让开发服务器允许被外部访问 默认情况下,vite 的开发服务器只能在 `localhost` 下访问,而它运行在 OpenVSCode Server 容器内,外部是无法访问的。 我们需要在 openvscode-server 里面修改一下 `vite.config.ts` 的配置 ```ts import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' // https://vite.dev/config/ export default defineConfig({ plugins: [vue()], server: { host: '0.0.0.0', port: 5173, allowedHosts: ['微服名.heiyu.space'], } }) ``` 这样才能在外部访问 vite 的开发服务器。其中 `allowedHosts` 我们等一会会使用到这个被允许的域名。 修改完成后,使用 `pnpm dev` 启动开发服务器。 #### 进行局域网端口转发 我们需要使用 「局域网端口转发工具」把宿主机的端口转发到应用内部的端口中。 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/76305d87-0cb3-492c-b391-b0ee58da55e9.png "image.png") 按照上图中的配置,配置后点击「测试连接」按钮,如果成功转发的话就会有成功的提示。 转发成功后,我们就可以在浏览器中 `http://<微服域名>:<端口号>` 的方式访问该项目的开发服务器了! ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/799/3a450fd4-e69a-44d7-b4d6-d943ac4048ab.png "image.png") 注意,此处我们需要使用 `http` 协议才能正常访问。 ## 结语 通过上面的案例,我们可以实现一个远程开发环境的搭建,后续的玩法就留给大家发挥了。 Happy Coding !

在懒猫中用 ani-rss 和 qBittorrent 下载番剧

## 看番是对的! 多看番剧提升二次元浓度有助于技术提升 ( bushi https://appstore.lazycat.cloud/#/shop/detail/dev.libr.anirss https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.qbittorrent https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward ## 准备 懒猫微服客户端下载 ani-rss、qBittorrent、局域网端口转发工具 注意说明界面提供的**账号**和**挂载路径** ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/98d55cf9-1955-456f-aff1-d25fd492d382.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/7f155a72-6245-420d-9408-45dcfd281013.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/70767e3f-f3ed-4418-add3-cf45dd7d0960.png "image.png") ## 使用 ### qBittorrent 1. 打开 qBittorrent,使用说明界面提供的账号登录 2. 登录后点击设置选项 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/b012e167-c2ca-4037-83d7-577327fe411b.png "image.png") 3. 顶部选项卡切换到 `Web UI`,记住对应的端口 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/c4e679ce-a8a0-4ba7-921c-e0e2d8ca536c.png "image.png") ## 局域网端口转发工具 使用端口转发工具将在懒猫中运行的 qBittorrent 暴露到局域网中以便其他服务访问 1. 打开局域网端口转发工具 2. 点击添加映射规则 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/fb62aa1a-918a-4d04-a9e1-62e3e2b84512.png "image.png") 3. 填写对应信息、测试、创建 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/0a6147b9-1889-4f13-92e4-ec023ba35d99.png "image.png") ## ani-rss 1. 打开 ani-rss 使用说明界面提供的账号登录 2. 点击右上角设置 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/b9ede7f6-ea52-45f1-ac6e-2fd60394aaa6.png "image.png") 3. 填写下载设置,测试 qBittorrent 登录 ❗❗❗一定要使用下载说明界面提供的路径 `网盘下载目录挂载路径:/root/Downloads`,否则会下载到对应容器内,懒猫网盘里是找不到的 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/f555362e-d0bd-41a1-8d3a-9c54002374d6.png "image.png") 4. 修改其他你需要的设置 5. 添加订阅 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/d13407b7-7050-49f1-af35-ad6d993cd7e8.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/918bb929-8024-49c6-87bd-f53786d26fcd.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/546/44fa6a5d-531a-4954-a128-5855a25264a0.png "image.png") 6. 等待下载任务完成 ## 总结 多看番!看好番! 订阅新番,在字幕组更新后,会自动下载最新一集,方便! 第一次写攻略,如果有问题欢迎交流讨论指正! 🤝

Omnibox配置篇 --- 一站搞定你所有观影需求

https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.omnibox 首先打开应用,点击右上角“我的” ![CleanShot 2025-11-08 at 22.34.52.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/c344193b-ac8e-47e8-a25d-c1cafe6d31d0.png "CleanShot 2025-11-08 at 22.34.52.png") 在点击右上角“管理”,进入管理员后台 ![CleanShot 2025-11-08 at 22.35.39.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/6bd9e882-92ec-4fe9-bc91-c340c1d678bc.png "CleanShot 2025-11-08 at 22.35.39.png") ## 配置采集站资源 点击左侧“**影视站资源**”,点击右侧“**导入/导出**” ![CleanShot 2025-11-08 at 22.48.53.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/e4a06ea7-98f1-4693-91fd-4030f2e119f0.png "CleanShot 2025-11-08 at 22.48.53.png") 点击“**导入**”,点击”**选择文件**“ ![CleanShot 2025-11-08 at 22.52.10.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/bf2d259e-feae-4a79-9b32-9c48d4e1a629.png "CleanShot 2025-11-08 at 22.52.10.png") > 可从这个地址下载json配置(https://quwenjian.cc/#/?code=O8P6N) 选择下载好的json配置文件 ![CleanShot 2025-11-08 at 22.51.31.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/c4c1c166-4805-4b89-9ffe-05d0c63f63bc.png "CleanShot 2025-11-08 at 22.51.31.png") 点击“**导入JSON文件**” ![CleanShot 2025-11-08 at 22.55.11.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/2b637526-f5fd-4c63-93a5-0539255bc21f.png "CleanShot 2025-11-08 at 22.55.11.png") 你就能看到所添加的采集站点,点击全选,然后点击“**批量测速**” ![CleanShot 2025-11-08 at 22.56.26.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/2872f2fd-7916-41a5-9e11-560e416b7ba0.png "CleanShot 2025-11-08 at 22.56.26.png") 接着你就可以对一些无法链接的资源进行删除或者修改其采集地址。 ![CleanShot 2025-11-08 at 22.59.03.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/aea61c51-82e8-4d2b-ba59-310c298bcf71.png "CleanShot 2025-11-08 at 22.59.03.png") 下图就是你配置之后的搜索效果,可点击首页影视作品,也可以进行搜索 ![CleanShot 2025-11-08 at 23.24.47.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/fbabc7ec-1fa8-49ab-aaf5-7c9f989d5621.png "CleanShot 2025-11-08 at 23.24.47.png") 随便点击一个之后就可以在线观看,可以点击右侧进行站点切换 ![CleanShot 2025-11-08 at 23.26.53.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/728289e9-3001-4b66-9836-bd11851585f0.png "CleanShot 2025-11-08 at 23.26.53.png") ## 配置网盘资源(可选) ### 配置盘搜站点 点击左侧“盘搜应用”,点击“配置应用地址” ![CleanShot 2025-11-08 at 23.00.24.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/bb400442-398d-4f8d-a943-352b9c9f51bd.png "CleanShot 2025-11-08 at 23.00.24.png") 输入盘搜站点地址,可“**全选**“,然后点击“**保存**”即可 ![CleanShot 2025-11-08 at 23.03.24.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/e8c79b26-a6e6-4a0f-acfd-bebc63a52348.png "CleanShot 2025-11-08 at 23.03.24.png") 相应的资源站点就出来了 ![CleanShot 2025-11-08 at 23.03.39.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/372ae752-75b3-4b47-b210-516c72084914.png "CleanShot 2025-11-08 at 23.03.39.png") > 因pansou站点比较敏感,可以用[fofa](https://en.fofa.info/result?qbase64=cGFuc291)进行关键词搜索即可找到对应公开站点 ### 配置自己的网盘 点击左侧”**网盘授权**“,选择自己常用的网盘类型,点击右侧“**点击配置授权**” ![CleanShot 2025-11-08 at 23.10.47.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/d752e7e6-c520-43d9-aa0c-7639248efd86.png "CleanShot 2025-11-08 at 23.10.47.png") 我这边用夸克网盘做演示,点击夸克网盘右侧授权,这里要求输入cookies ![CleanShot 2025-11-08 at 23.11.18.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/90139084-5b27-4c21-a719-959dda276b5c.png "CleanShot 2025-11-08 at 23.11.18.png") 浏览器登录你的夸克网盘,F12进入控制台,点击**Network(网络)**,找到左侧的**list**,右侧下拉看到**Cookies**,复制其值即可 ![CleanShot 2025-11-08 at 23.16.35.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/d7651372-4ea1-4a7b-bb9f-122179554b67.png "CleanShot 2025-11-08 at 23.16.35.png") 回到应用,粘贴复制的值,点击保存即可 ![CleanShot 2025-11-08 at 23.19.03.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/33965c44-56d9-4244-8c54-dba9abd51640.png "CleanShot 2025-11-08 at 23.19.03.png") 显示”**有效授权**“就表示成功了 ![CleanShot 2025-11-08 at 23.19.08.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/0d969962-2585-412e-ab13-39514b1c2a8d.png "CleanShot 2025-11-08 at 23.19.08.png") > 其他网盘都有配置指示,填入相关参数即可 ## 电视直播配置(可选) ### 电视直播配置 点击左侧”**电视直播**“,点击”**添加**“,名称随便填写,地址请自行寻找对应的直播源,图中的地址仅供测试(https://raw.githubusercontent.com/hujingguang/ChinaIPTV/main/cnTV_AutoUpdate.m3u8) ![CleanShot 2025-11-08 at 23.40.11.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/cf39d266-a3d2-4206-93b8-ea74e8dfe6bc.png "CleanShot 2025-11-08 at 23.40.11.png") 配置后,点击上方”电视“,选择刚才配置的数据源,选择下方频道即可观看。 ![CleanShot 2025-11-08 at 23.49.22.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/36018335-9441-4059-9946-33e44e2fe3a4.png "CleanShot 2025-11-08 at 23.49.22.png") ### 自定义源 如果你有定制直播源需求的话,可以点击左侧**自定义源**,点击**远程导入**m3u8地址,然后在下方按照示例进行编辑,右侧会显示对应效果。你可以选择导出,再进行上面的添加操作即可重新导入新的直播源。 ![CleanShot 2025-11-08 at 23.53.38.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/1b23c419-6232-400b-a747-430c2e1e2ebd.png "CleanShot 2025-11-08 at 23.53.38.png") ### 平台直播 直播间的配置就很简单,选择好对应平台,找到房间号,对应输入信息就可以了 下面以B站直播为例,找到直播房间号 ![CleanShot 2025-11-09 at 00.04.14.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/a6500085-75c1-4a2e-8975-92438ac4b934.png "CleanShot 2025-11-09 at 00.04.14.png") 然后回到应用,选择左侧**平台直播**,点击**添加**,对应填写相关信息并保存,见下图 ![CleanShot 2025-11-09 at 00.05.28.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/646f5364-f50a-4e37-a4df-5cb239e66ea0.png "CleanShot 2025-11-09 at 00.05.28.png") 点击上方**直播**,就可以看到刚才添加的直播间 ![CleanShot 2025-11-09 at 00.05.43.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/58931330-7721-419c-8e3b-d2ce578d4b62.png "CleanShot 2025-11-09 at 00.05.43.png") 点击即可观看 ![CleanShot 2025-11-09 at 00.05.51.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/c2eaf5bf-dc91-41b7-a35a-f83b2a65cfb9.png "CleanShot 2025-11-09 at 00.05.51.png") ### 影视订阅(可选) 这个功能主要是用于一些TVbox,猫影视等空壳软件配置视频源,这样你就有属于自己的影视源,而不需要再去网上寻找了。 我这边以UZ软件为例,点击右上角**影视订阅**,对应复制UZ订阅地址 ![CleanShot 2025-11-09 at 00.21.56.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/8320f763-74ab-4c3a-ab88-49a052460d54.png "CleanShot 2025-11-09 at 00.21.56.png") 打开端口转发工具,选择局域网模式,按下图配置 https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward ![CleanShot 2025-11-09 at 00.21.18.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/71bae25b-ad24-441a-8da0-c1007e80074f.png "CleanShot 2025-11-09 at 00.21.18.png") 打开UZ软件,设置里点击订阅源,点击+号,把粘贴刚才omnibox里的UZ地址,把前缀懒猫地址替换成你的懒猫IP地址,见下图,点击确定 ![CleanShot 2025-11-09 at 00.22.50.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/7c34052d-552b-4170-92c8-69ab2bedcaf3.png "CleanShot 2025-11-09 at 00.22.50.png") 稍等片刻就可以看到识别之前在omnibox里添加的视频源了。然后对应选择添加导入即可使用。 ![CleanShot 2025-11-09 at 00.23.31.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/f6199a3f-8b36-42b5-ad39-1bec171e62e9.png "CleanShot 2025-11-09 at 00.23.31.png") 然后你就可以直接在软件里观看了。 ![CleanShot 2025-11-09 at 00.32.21.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/156764f7-7a5b-41ed-8e08-53291ae99fca.png "CleanShot 2025-11-09 at 00.32.21.png") ![CleanShot 2025-11-09 at 00.32.48.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/402/1cbc0bb8-04da-4b9d-bbd3-4409bb9178b0.png "CleanShot 2025-11-09 at 00.32.48.png") **以上可选部分按自己需求可进行配置,并强制要求,只需配置采集站即可实现基本的观影需求**

局域网端口转发教程

https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward ## 局域网端口转发访问流程: ![懒猫端口转发工具](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320220713155.png?imageSlim) > 设备访问——>入口地址——>通过端口转发后——>访问目标地址 > 始终记住访问的永远是左边的地址 > 注意端口范围:**1~65535**(尽量用 **1024** 以上的端口,避免一些常用协议端口,避免转发一些使用过的端口,创建之前一定先检测连通性) ## 配置选项说明以及使用方法 ### 1、微服网卡 (仅微服所在局域网可访问) 限制在微服所在的局域网内访问,外部网络无法直接连接 适用于局域网内部的服务调用和数据传输 **适用使用举例**: 通过微服网卡IP——>访问——>微服应用服务 ![微服应用服务转发](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320223405159.png?imageSlim) **通过微服网卡IP——>访问——>微服登录的客户端主机上的服务(目标地址的客户端要登录懒猫微服应用)** 这个可以用远程桌面,访问登录客户端的设备(示例演示的是一个手机上的 `python -m http.server` 的例子) ![微服客户端服务转发](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320231744041.png?imageSlim) ![手机上的数据](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320232016058.png?imageSlim) 通过微服网卡IP——>访问——>其他网络地址:微服局域网设备或者微服127.0.0.1的服务(本身127.0.0.1的服务是指:**mainframe** 文件中有 `network_mode:host` 的,或者 **dockge** 部署的容器) 这个可以用远程桌面,微服局域网设备或者微服 `127.0.0.1` 的服务(示例演示 **dockge** 起的服务) ![微服上Dockge启动 Nginx](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320234040856.png?imageSlim) ![微服上Dockge启动的Nginx服务](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320233118895.png?imageSlim) ### 2、微服虚拟网卡 (仅微服应用容器可访问) 适用于微服应用容器内部的通信,外部无法直接访问 提供隔离的网络环境,确保容器间通信的安全性 **懒猫微服平台中的应用默认享有网络隔离,类似Docker容器间隔离。若需两个应用互访,此选项来实现转发配置。** **适用使用举例:** 应用访问——> host.lzcapp:端口 ——>另一个应用服务 [以Radarr和Jackett为例](https://playground.lazycat.cloud/#/guideline/295) ![应用间转发](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320234532846.png?imageSlim) <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/20250605165748091.png?imageSlim" alt="image-20250409140008473" style="zoom: 50%;" /> ### 3、微服域名 (仅登录微服务户端可访问) 通过域名访问,仅限于已登录微服务客户端的用户 提供基于身份验证的访问控制,增强安全性 **适用使用举例**: 登录客户端——>访问:$微服名.heiyu.space:端口——>微服登录的客户端主机上的服务(目标地址的客户端要登录懒猫微服应用) 这个可以用远程桌面,访问登录客户端的设备(示例演示的是一个python的例子) ![微服域名转发](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320235337454.png?imageSlim) ![域名转发手机上Python服务](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320235404512.png?imageSlim) 登录客户端——>访问:$微服名.heiyu.space:端口——>其他网络地址:微服局域网设备或者微服127.0.0.1的服务(本身127.0.0.1的服务是指:mainframe中有network_mode:host的,或者dockge部署的容器) 这个可以用远程桌面,微服局域网设备或者微服 `127.0.0.1` 的服务(示例演示微服局域网的 **Ubuntu** 的 **ssh** 远程) ![域名转发内网服务](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260320235850971.png?imageSlim) <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20251118133025952.png?imageSlim" alt="image-20251118133025952" style="zoom:50%;" /> ### 4、微服务户端 (仅映射的客户端本地可访问) 服务仅映射到客户端本地,其他设备或用户无法访问 适用于需要本地化服务的场景,保护数据隐私 这个就相当与把微服应用服务、其他客户端的服务端口、其他地址服务端口,转到某一个设备上面,在那个设备上面使用127.0.0.1即可访问 **适用使用举例:** 登录客户端——>本地客户端访问 `127.0.0.1:端口` ——>微服应用服务、其他客户端的服务端口、其他地址服务端口 ![仅微服客户端本地可访问](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260321000216508.png?imageSlim) <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20251118135613205.png?imageSlim" alt="image-20251118135613205" style="zoom: 50%;" /> ### 5、微服通配地址 (0.0.0.0) 绑定到所有网络接口,允许从任意地址访问 通常用于开放服务的场景,保护数据隐私 这一个配置可以代替以上除了 微服务户端 (仅映射的客户端本地可访问) 的所有配置 ## 目标转发地址 #### 1、微服应用 **操作过程**: 选择应用(映射懒猫已运行的应用服务) 选择服务(mainfest.yml里的service名称) 选择服务协议(默认tcp/udp) 可下拉选择映射的端口 **主要用途**: 应用的服务暴露与访问 **注意事项**: 应用需要running状态,如果启动了应用,但是列表里面没有running,可以点一下刷新 如果不知道转发应用那个端口,可以点击端口旁边的小问号,查看具体服务对应的具体端口 ![只有运行中的服务才可以被转发](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260321000506404.png?imageSlim) ![快速列出应用内监听的端口](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260321000622184.png?imageSlim) #### 2、微服客户端 **操作过程:** 选择客户端网络地址(主机名称) 选择服务协议(默认tcp/udp) 选择需要映射的端口 (可选)添加备注 **主要用途:** 客户端调试与访问 这个可以用作远程访问,前提是对端设备也登陆了懒猫微服客户端 ![展示微服客户端](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260321000729939.png?imageSlim) #### 3、其他网络地址 操作过程: 输入目标网络地址 选择服务协议(默认tcp/udp) 输入需要映射的端口 (可选)添加备注 **主要用途:通用网络转发(如:dockge写127.0.0.1+端口compose里的端口、微服能通信的网络:写IP地址+服务端口)** 一定要测试连通性 可用用作远程访问微服同局域网的设备上的服务 dockge的写法 ![其他网络地址](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260321000944418.png?imageSlim) 微服同局域网的写法 ![微服同局域网地址](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260321001056262.png?imageSlim) ## 添加转发LPK > 0.9.2 新增功能 我们在别的设备部署了服务,想要通过微服的域名访问,可以使用这个功能。 ![image-20260324151056614](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260324151056614.png?imageSlim) 点击**转发LPK**会弹出**创建转发LPK界面** <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325144411014.png?imageSlim" alt="转发本地py程序" style="zoom:50%;" /> - 子域名:打开应用的子域名,列如 {填写的子域名}.{你的盒子名}.heiyu.space - 名称:在控制台的名称 - 图标:在控制台显示的图标 - 上游地址:要转发的服务地址 - 协议可选 http 和 https,选择与转发服务相同的协议 - ip 要转发服务的地址 - 端口 转发服务的端口 - **跳过认证,可以在不登录微服的情况下使用(API类型的服务,推荐勾选这个选项,在发送请求时不需要在添加微服的认证请求头)** - 图标,在启动台展示的应用图片 - Package ID,自动生成不能修改 <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325144838888.png?imageSlim" alt="image-20260325144838888" style="zoom:50%;" /> 点击创建后会自动安装一个应用到启动台里面 <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325145059804.png?imageSlim" alt="image-20260325145059804" style="zoom:33%;" /> 打开后可以看到本地启动的服务,可以通过 <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325145202696.png?imageSlim" alt="image-20260325145202696" style="zoom:33%;" /> ## NetMap LPK > 0.9.2 新增功能 其他设备部署的服务如果不是 web 相关的,就可以使用这个功能,把目标主机的所有服务全部都转发过来,通过域名来访问。 <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325153044263.png?imageSlim" alt="image-20260325153044263" style="zoom:50%;" /> 我这里把我电脑的IP 通过微服转发,点击创建并安装 <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325153208779.png?imageSlim" alt="image-20260325153208779" style="zoom:50%;" /> 安装之后在微服控制台中会出现一个新的图标,打开之后如下图: <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325153326042.png?imageSlim" alt="image-20260325153326042" style="zoom:50%;" /> 我们访问这个 `archlinux.mhwy.heiyu.space` 域名的所有端口,都会被转发到 `192.168.3.225` 这台电脑上面。 <img src="https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1128/image-20260325153616979.png?imageSlim" alt="image-20260325153616979" style="zoom:50%;" /> 我本机开启了 SSH 服务,这里通过域名访问我本机的 ssh 这里可以看到已经访问成功了 > 注意,访问时需要确保端口转发工具创建的 LPK 是在运行的状态,不然是无法访问的。 ## 结语 端口转发玩法性很多,入口地址与目标地址可以有很多种搭配方式,规则保存之前一定要测试连通性

在LightOS使用GitLab CLI管理和备份项目

https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.lightos.entry https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.gitlab ## 配置 Gitlab HTTP 端口转发 ### 转发 HTTP 端口 打开局域网端口转发工具,创建转发规则,类型选择懒猫物理网卡,监听端口随便填一个,但要记住一会儿有用。服务选择 gitlab,目标端口选择 80。最后保存修改,如果端口号被占用,换一个监听端口即可。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/e0ae031f-fb08-46c1-89f8-1d497d54ffc5.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/f0c267ee-74dc-4c8b-bd85-e9b21f2f34fb.png "image.png") ## Gitlab 配置 Access tokens 点击头像,选择偏好设置,再选择 Access tokens。点击添加新令牌,按需勾选选项并设置过期时间,最后点击“创建个人访问令牌”按钮,将令牌 token 复制。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/9a007972-75d4-4c04-9ac1-d4099b2b49af.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/978f3d16-32dd-480e-bb4f-8e2dc85a9be9.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/4c58cea6-390f-454d-9bbc-459e8343d7c0.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/439fb344-a6f8-41e3-91d5-985e3d1f198c.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/6300e719-31ad-42a7-81a2-084132d640f9.png "image.png") 进入 LightOS 随便进入一个项目,用 codex/claude code 下载 gitlab CLI,并告诉 gitlab 的令牌 token 和 gitlab HTTP 的转发的地址 + 端口。 prompt 如下(注意需要将 token 和 HTTP 地址换为你的,地址需要加上端口号): ```txt 联网搜索一下gitlab CLI的安装方式,并安装在本地。通过 token 进行登录,token 是 xxxxx,gitlab CLI 的 HTTP 地址是 xxxx,这样我就可以在本机直接创建和更新仓库了。并且将基本的使用方式写在 ~/.codex/AGENTS.md 文档中。 ``` 如果安装好没了,没登录让 AI 帮你登录一下,并且之前配置的转发目标端口是 80 不是 22,22 SSH 端口,适合本地 push/pull,但这样还要配置 SSH Key。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/189bbf21-cbed-4877-aee4-13b347ff1c01.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/a568d41f-487e-4ec2-acbc-1e87d0dd6b9f.png "image.png") 配置完成,找个项目验证一下,提示词如图片所示。如果全局 AGETNS.md/CLAUDE.md 文档没写 gitlab CLI 的基本使用方式则需要人为告知一下 AI 或者让 AI 再写一次。最后等待一会儿就 OK 了。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/d7ecaf1d-790d-4896-b912-a5ffc635f228.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/00de6537-8d8e-41e2-8204-3d5d3592da1f.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1123/ee153831-1d96-4b19-8188-e3e36a24f092.png "image.png") 如果项目有很多个,可以在项目目录下,打开 codex/claude code 让其将本目录下的项目全部推送到 gitlab 进行管理和备份。

买微服血赚攻略:我的世界服务器本地部署

苦于各类云服务器好一点的配置/流畅的带宽任何一项加一点都很贵,并且到期时要是忘记把数据拿到本地,就会永久丢失了,于是这一篇攻略就出来了。不止配置我的世界服务器,很多类似的服务部署都可以参考这一篇懒猫的网络配置方案。 使用到的应用: https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.lightos.entry 可选应用: https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.forward 这篇攻略会做的事情: 1、在LightOS内创建合适的镜像 2、服务器版本选择及对应Java环境部署和安装 3、配置端口转发 4、联机及客户端配置 一、选择镜像 进入LightOS --- 点击创建 这里使用Arch Linux 镜像,勾选基础软件包安装开发基础工具 常用CLI工具。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/1b1dc9d8-4fea-498e-bd50-d537cc2e118f.png "image.png") 点下一步 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/9ae65682-f41b-4e16-a374-08079000fbce.png "image.png") 填写自定义的用户名密码后点击创建 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/eace1ba5-f924-49db-871b-a6d8a02fa064.png "image.png") 二、配置环境 随着版本更迭,挺多版本都会进行Java版本的更新,Java服务端和版本配置挺难解决的,这里统一给出来: 1、Minecraft 版本和 Java 版本常见对应关系: |Minecraft 版本|建议 Java| |---|---| |1.20.5 及以上、1.21.x|Java 21| |1.18 到 1.20.4|Java 17| |1.17.x|Java 16 或 Java 17,按服务端核心要求| |1.16.5 及更旧|老 Forge 整合包常见 Java 8,具体看整合包说明| 先更新系统并安装常用工具(需要安装): ```bash sudo pacman -Syu sudo pacman -S curl wget unzip screen tmux vi traceroute ``` OpenJDK 包名常用这些(选择一个安装): ```bash sudo pacman -S jdk8-openjdk sudo pacman -S jdk17-openjdk sudo pacman -S jdk21-openjdk sudo pacman -S jdk25-openjdk ``` 查看已安装 Java(可选): ```bash archlinux-java status ``` 切换 Java 版本(可选): ```bash sudo archlinux-java set java-17-openjdk sudo archlinux-java set java-21-openjdk sudo archlinux-java set java-25-openjdk ``` 如果你不知道选哪个,当前新服优先用 Minecraft 1.21.x + Java 21。除非你要跑最新 Paper 26.1+,否则多数 1.21.x 服务器用 Java 21 更稳妥。Paper 官方文档目前说明 1.20 到 1.21.11 推荐 Java 21,Paper 26.1+ 要求 Java 25。 确认 Java 可用(可选): ```bash java -version ``` 如果系统里装了多个 Java 版本, Java 管理工具查看(可选): ```bash archlinux-java status ``` 切换到 Java 21(可选): ```bash sudo archlinux-java set java-21-openjdk ``` 2、服务端类型怎么选(第2小章是原版、第3小章是mod版,可酌情选择配置) | 类型 | 适合场景 | 客户端是否需要额外安装 | | ---------------- | ----------------------- | ----------- | | Vanilla 原版/纯净版 | 原版生存、建筑、红石,最少兼容问题 | 不需要 | | Paper / Purpur | 更好性能、权限、领地、经济、登录等插件 | 通常不需要 | | Fabric | 轻量 MOD、性能 MOD、现代 MOD 生态 | MOD 服通常需要 | | Forge / NeoForge | 大型整合包、科技、魔法、冒险类 MOD | 通常需要 | 新手建议: - 只想和朋友玩原版生存:选 Vanilla 或 Paper。 - 想要插件、权限、领地、经济:选 Paper。 - 想玩 MOD:按 MOD 或整合包要求选择 Fabric、Forge 或 NeoForge,不要混用加载器。 3、纯净版部署 1.不使用最新版,寻找对应纯净版(可选) 打开Minecraft Assets Explorer ``` https://mcasset.cloud/ ``` 选择对应版本后下载对应json文件 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/67ba5c44-2643-488c-a74f-dd9d430c4735.png "image.png") 搜索关键字 server.jar 就可以找到对应的下载url ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/152cb547-c810-4f3a-b0ff-8ca6c37a804c.png "image.png") 在本地下载后,一会儿上传到LightOS内 2.官方最新版: 从官方页面下载 `server.jar`: ```text https://www.minecraft.net/download/server ``` 3.安装server端 创建服务器目录: 这里的$USER替换成创建时的用户 ```bash sudo mkdir -p /opt/minecraft-server sudo chown -R "$USER:$USER" /opt/minecraft-server ``` ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/7e580188-7404-46f9-89a2-eb444200bb71.png "image.png") 进入服务器目录: ```bash cd /opt/minecraft-server ``` 本地下载完成后在LightOS内上传附件,选择本地的server.jar文件 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/b1e1c2d7-befe-43e5-97e4-c9de62015f22.png "image.png") 上传的文件会存在在/tmp目录,我们先移动过来 ``` mv /tmp/server.jar /opt/minecraft-server ``` 首次启动,生成EULA文件,报错是正常的 ```bash java -Xms2G -Xmx4G -jar server.jar nogui ``` ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/59ff8c57-fb27-43f0-ab78-230a6155c78a.png "image.png") 首次启动会生成 `eula.txt`,需要同意 EULA 后才能继续运行: ```bash vi eula.txt ``` 进去之后按i进行编辑 把: ```text eula=false ``` 改成: ```text eula=true ``` 按esc 再输入":wq" 进行保存 保存后再次启动: ```bash java -Xms2G -Xmx4G -jar server.jar nogui ``` 常见配置文件是 `server.properties`,常用项: ```properties server-port=25565 online-mode=true motd=A Minecraft Server difficulty=normal max-players=20 view-distance=10 simulation-distance=10 ``` 说明: - `online-mode=true`:正版验证。公开服建议保持 `true`,要是联机的小伙伴没有正版账户,这里**看情况**进行调整。 - `server-port=25565`:默认端口,不要变,等会儿把端口通过服务的方式映射出去。 - `view-distance` 和 `simulation-distance` 越高越吃性能。 **这里为止已经成功启动服务器了** ### 4、Paper 插件服部署 Paper 是高性能服务端,适合纯净玩法加插件,比如领地、权限、登录、经济、菜单等。多数情况下,玩家客户端不需要安装任何东西,只要版本匹配就能进。 下载地址: ```text https://papermc.io/downloads ``` 下载后和纯净版部署一样,上传到LightOS内,例如: ```bash mv /tmp/paper-*.jar paper.jar cd /opt/minecraft-server java -Xms2G -Xmx4G -jar paper.jar --nogui ``` 插件放到: ```text /opt/minecraft-server/plugins/ ``` 注意:插件服和 MOD 服不是一回事。Paper 插件一般不能直接放进 Fabric/Forge/NeoForge 的 `mods` 目录。 5、安装MOD 1.寻找MOD方式 推荐来源: - Modrinth:[https://modrinth.com](https://modrinth.com) - CurseForge:[https://www.curseforge.com/minecraft](https://www.curseforge.com/minecraft) - MC百科:https://www.mcmod.cn/ - 整合包官方页面提供的 Server Pack 找 MOD 时按这个顺序检查: 1. Minecraft 版本是否一致 例如服务器是 `1.21.1`,就不要下载 `1.20.1` 的 MOD。 2. 加载器是否一致 Fabric MOD 给 Fabric 用,Forge MOD 给 Forge 用,NeoForge MOD 给 NeoForge 用。 3. 运行位置是否正确 有些 MOD 是客户端专用,有些是服务端专用,有些两边都要装。 4. 依赖是否齐全 下载页面通常会写 Required Dependencies。 大型模组通常支持多个不同的加载器,可以按需选择 ![[Pasted image 20260520202310.png]] 如果你要开整合包服务器,优先找它提供的 `Server Pack`。Server Pack 通常已经帮你整理好了服务端需要的 MOD、配置和启动脚本,比自己从客户端包里拆更稳。 2.安装MOD服务器 我这里以neoforge 1.21.1版本为例: 官网下载neoforge[The NeoForged project](https://neoforged.net/) ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/d5de5878-a788-42c6-a0df-436be2d96445.png "image.png") ```bash #安装JAVA sudo pacman -S curl wget unzip screen tmux vi traceroute sudo pacman -S jdk21-openjdk #把刚刚neoforge官网下载的文件上传LightOS后执行下面步骤 sudo mkdir -p /opt/minecraft-server sudo mv /tmp/neoforge-*-installer.jar /opt/minecraft-server/neoforge.jar #把传到LightOS的文件传到配置好的游戏服务器 sudo java -jar neoforge.jar #安装neoforge ``` 这里服务器需要的组件就安装完成了,接下来执行: ```bash sudo chown -R "$USER:$USER" /opt/minecraft-server #$USER填写LightOS注册时输入的用户 sudo sh /opt/minecraft-server/run.sh ``` 会出现报错: ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/0c8484d6-4f53-4054-a597-21e52c8a4486.png "image.png") 去调整下eula.txt ```bash sudo vi eula.txt ``` 进去之后按i进行编辑 把: ```text eula=false ``` 改成: ```text eula=true ``` 按esc 再输入":wq" 进行保存 然后添加需要使用的MOD: ```bash #找到MOD后上传到LightOS内 sudo mv /tmp/mod名称 /opt/minecraft-server/mods/ ``` 最后执行: ```bash sh /opt/minecraft-server/run.sh ``` **这里已经成功启动neoforge服务器了** ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/03460968-c0c1-49e4-b2b7-bf8464d617e9.png "image.png") ## 三、端口转发 由于MC服务器不是通过http连接的,LightOS内的服务转发不可用,可以用别的方式进行转发。 这里有两张方式,想折腾的可以研究第二种 1、把这个实例修改为hosts模式 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/ff358cda-89c3-4cf3-9b7a-27116e5484d1.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/e2d2e47d-46e3-4155-bdc0-58fdff31dc4a.png "image.png") 然后端口就会到微服本地的25565了 2.端口转发 首先确定自己的实例网络配置 ```bash #实例内输入 ip a #查看本机IP地址 traceroute baidu.com ``` ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/da25db4a-edf6-4cd5-bb75-0353d1526346.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/39812ffa-e45f-4dff-b100-ad19aa2b5e70.png "image.png") 如图,我是100.64.0.12 访问外部通过的第二跳IP是169.254.164.200 然后ssh到微服里面查看网络配置(每个人不一定相同,需要酌情更改) ```bash #在微服输入,不是LightOS实例里面,要打开微服的ssh功能 ip a | grep 169.254.164 #这里填写刚刚第二跳IP的前三个 ``` ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/a31b9f0e-14b2-4d2d-a3f9-58b2f8ac736b.png "image.png") 这里需要在微服里添加一条路由,由于实例出来的网段是169.254.164.200/30(200是网段标识,201是网段里的IP),所以这里在微服里添加一条路由: ```bash ip route add 100.64.0.12 via 169.254.164.201 #ip route add <目标地址或网段> via <网关IP> ``` 现在微服已经可以成功ping通处于nat模式的实例了 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/89928f15-de5c-4bf4-88b9-94abe3f122a3.png "image.png") 配置端口转发: 使用网络端口转发工具 按照下图进行填写 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/fe493310-d635-4296-8aec-174b3c34be77.png "image.png") 配置完成后就把LightOS内的实例端口转发到微服上了 **至此完成端口转发,可以准备联机了** 四、联机及客户端配置 1、游戏客户端下载 这里建议使用HMCL作为客户端启动工具 [下载 - Hello Minecraft! Launcher](https://hmcl.huangyuhui.net/download/) 下载后双击启动 我这里有账户,没有官方账户的可以选择注册一个离线账户 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/2d2235f9-d397-4a8d-be55-bbf645212c4e.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/7458f513-fc80-41d5-9f6f-407cf76fb27c.png "image.png") 安装对应游戏版本: ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/5111e335-a569-4894-a327-29dbd359711f.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/cebeead8-eef4-4ed4-8bbc-d0e62451a3ab.png "image.png") 选择服务器对应版本下载: ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/6abdfb53-8311-4930-84eb-d34bb29781d9.png "image.png") 2、下载懒猫微服客户端 1)给要联机的同学下载一个懒猫微服客户端 [懒猫微服客户端下载](https://lazycat.cloud/download) 2)创建一个没权限的子账户,让同学登录挂着就行。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/a4f9c167-22bd-4c2d-af54-6c9d3cd1b382.png "image.png") 所有权限全部关闭: ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/2143a4c5-2422-47bb-b383-21149089f469.png "image.png") 同学登录后挂着,就能连接到你配置的端口转发了。 在联机之前确保: 1)游戏服务器和客户端的版本是相同的。 2)要是装了mod,确保mods目录文件相同。 3)登录游戏,游戏内点击多人游戏-联机域名输入:<自己的微服名称>.heiyu.space:25565,即可成功连接。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/479d5c1f-8bac-4f7f-9965-47cf837cb468.png "image.png") ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/6710ae03-63a0-4208-bf83-2af3e037e77f.png "image.png") 也是成功连接上服务器了 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/3e14ad33-2a94-4d69-8c2a-a8c80593dda4.png "image.png") 测试延迟也是超级快 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/a6306e6f-c928-4de0-9a34-885d52f6ddfe.png "image.png") 性能也不需要担心,LightOS是硬件直通的,完全不用担心转译损耗的问题。 ![image.png](https://lzc-playground-1301583638.cos.ap-chengdu.myqcloud.com/guidelines/1369/571c4418-3c35-468d-aff9-010873e433c1.png "image.png")

懒猫评分/评论

5.0

1 条评论

好用 高级 牛逼

应用信息

最新版本

0.9.19

更新日期

6/26/2026

预估安装占用

34.64 MB

不支持平台

--

来源

Freesh

兼容性

可在此设备上使用

新增 MCP 支持, 可通过 MCP 客户端使用端口转发能力。