Slim 轻量级的命令行工具,能让你为本地开发项目快速创建干净的 HTTPS 本地域名(如 myapp.test),并能通过一条命令将本地服务安全地暴露到公网
Slim 详细部署教程
Slim 是一个轻量级的命令行工具,能让你为本地开发项目快速创建干净的 HTTPS 本地域名(如 myapp.test),并能通过一条命令将本地服务安全地暴露到公网(如 cheeky-panda.slim.show)。
本教程将指导你完成 Slim 的安装、本地使用和公网分享配置。
一、安装 Slim
Slim 的安装方式非常简单,推荐使用官方安装脚本。
1.1 一键安装(推荐)
打开终端,执行以下命令:
1 | curl -sL https://slim.sh/install.sh | sh |
这个脚本会自动下载并安装 Slim 到你的系统。
1.2 从源码构建(开发者选项)
如果你希望从源码构建,需要先安装 Go 1.25 或更高版本。
1 | # 克隆仓库 |
1.3 验证安装
安装完成后,运行以下命令检查是否成功:
1 | slim --version |
如果能看到版本号,说明安装成功。
二、本地开发:创建 HTTPS 域名
Slim 的核心功能是将 localhost:端口 映射为一个本地 HTTPS 域名,方便开发和测试。
2.1 基本用法:启动一个服务
使用 slim start 命令,为你的本地端口创建一个自定义域名:
1 | slim start myapp --port 3000 |
执行后,你就可以通过 https://myapp.test 来访问原本在 localhost:3000 运行的服务了。slim start 会自动完成:
- 生成并信任一个本地 CA 证书。
- 将
myapp.test解析到127.0.0.1。 - 启动一个反向代理,将 HTTPS 流量转发到你指定的端口。
2.2 高级路由:一个域名,多个服务
你可以将一个域名下的不同路径,指向不同的本地端口:
1 | slim start myapp --port 3000 --route /api=8080 --route /ws=9000 |
这样:
https://myapp.test→localhost:3000https://myapp.test/api→localhost:8080https://myapp.test/ws→localhost:9000
2.3 使用自定义顶级域名 (TLD)
默认情况下,Slim 会使用 .test 域名。你也可以指定任何你想要的完整域名(但避免使用 .local,它可能和 mDNS 冲突):
1 | slim start app.loc --port 3000 # https://app.loc |
2.4 管理多个服务:停止与列表
1 | # 停止一个特定的域 |
2.5 使用配置文件(项目级)
你可以在项目根目录创建一个 .slim.yaml 文件,集中定义所有服务,方便团队共享配置。
示例 .slim.yaml:
1 | services: |
定义好后,使用一条命令即可启动全部服务:
1 | slim up |
停止所有服务则使用:
1 | slim down |
三、公网分享:将本地服务暴露到互联网
Slim 还能将你的本地服务通过一个公共 URL 分享给他人,非常适合演示、测试或协作。
3.1 登录(首次使用)
分享功能需要先登录你的账户:
1 | slim login |
按照提示完成登录。
3.2 基础用法:随机公网 URL
最简单的分享方式,获取一个随机生成的 slim.show 子域名:
1 | slim share --port 3000 |
3.3 高级分享选项
你可以通过参数进行更精细的控制:
1 | # 使用自定义子域名 |
四、诊断与维护
Slim 提供了几个有用的命令来帮助你排查问题。
4.1 运行诊断
doctor 命令会检查所有关键组件是否正常工作:
1 | slim doctor |
一个健康的输出示例:
1 | ✓ CA certificate valid, expires 2035-02-28 |
4.2 查看日志
1 | # 查看所有访问日志 |
五、更新与卸载
5.1 更新到最新版本
1 | slim update |
5.2 完全卸载
这将移除所有相关的证书、Hosts 条目、端口转发规则和配置文件:
1 | slim uninstall |
六、注意事项
.local域名:在 macOS 和 Linux 上,.local通常被 mDNS 协议预留,可能导致 DNS 解析变慢。Slim 默认使用.test,请避免使用.local。- 系统权限:Slim 在修改
/etc/hosts文件和创建端口转发规则(用于 80/443 端口)时,可能需要你输入管理员密码。 - 登录状态:
slim login和slim share命令需要网络连接。首次使用请确保网络畅通。
通过以上步骤,你应该能够顺利安装并使用 Slim 来简化本地开发和外部协作流程。


