使用Microsoft Dev Tunnels实现内网穿透

本文介绍了MicrosoftDevTunnels的概念,它如何让开发者安全地分享本地开发环境,包括其优势如默认安全、持久URL、多端口支持等。还详细讲解了在Windows、macOS和Linux环境下安装及使用的步骤,以及登录、host和连接的流程。同时,文章列出了资源使用限制.

什么是Microsoft Dev Tunnels?

开发人员隧道允许开发人员跨 Internet 安全地共享本地 Web 服务。 使你能够将本地开发环境与云服务连接,与同事共享正在进行的工作或帮助构建 Webhook。 开发隧道适用于临时测试和开发,不适用于生产工作负荷。

 

Microsoft Dev Tunnels的优势

  • 默认情况下安全 - 默认情况下,创建开发隧道只能使用 Microsoft、Microsoft Entra ID 或 GitHub 帐户访问。
  • 持久 URL - 根据需要保留相同的开发隧道 URL。
  • 支持多个同时端口 - 同时在单个开发隧道上托管多个端口。
  • 全局服务可用性 - 开发隧道服务全局可用。 开发隧道会自动在最近的可用区域中创建。
  • 隧道检查 - 检查熟悉的接口、浏览器 DevTools 中的开发隧道流量。

安装Microsoft Dev Tunnels

Windows环境
使用Windows 包管理器 (winget)

可以使用适用于 Windows 的 Microsoft 程序包管理器 winget 来安装和更新 devtunnel CLI。

winget install Microsoft.devtunnel

此命令默认安装最新版本,并删除同一位置的旧版本,即 %LOCALAPPDATA%\Microsoft\WinGet\Packages。 若要指定版本,请将所需版本添加到 --version <version_number> 命令。

winget upgrade Microsoft.devtunnel

<think>好的,用户想用ngrok的docker镜像实现内网穿透。首先,我得回忆一下之前学过的相关引用内容。记得引用1和5都提到了Docker部署Ngrok的方法。用户可能需要具体的步骤,比如安装Docker、获取镜像、配置文件和启动容器这些步骤。 首先,确保用户已经安装了Docker,这是前提。引用1提到要安装Docker Engine,所以应该先检查用户是否已经安装,如果没有的话需要指导安装步骤。不过用户可能已经安装过了,所以可能不需要详细说明安装,但可以提一下确认安装。 接下来,获取ngrok的官方镜像。根据引用5,镜像是ngrok/ngrok:latest,所以需要用户拉取这个镜像。然后配置文件的设置,这里用户需要创建ngrok.yml文件,并填入authtoken,这个token需要用户去ngrok官网注册获取。引用5中的示例配置文件可能会有帮助,需要展示如何编写这个文件,包括隧道配置,比如http和tcp的例子。 然后,启动容器的时候可能需要不同的网络模式,比如host或者bridge。引用5中的docker-compose文件用了network_mode: host,这样可以方便端口映射,但用户如果使用bridge的话可能需要映射端口。需要解释两种方式的区别,让用户根据自己的需求选择。 另外,用户可能需要持久化配置文件,所以要用volumes挂载本地文件到容器内,确保配置不会丢失。引用5中的volumes部分已经展示了这一点,需要强调这个步骤的重要性。 可能还需要提到如何验证服务是否成功启动,比如查看容器日志,或者访问生成的域名。同时,如果用户需要固定域名,可能需要升级到付费计划,引用5提到需要申请的固定域名,所以这一点也要说明。 还要注意用户可能遇到的常见问题,比如authtoken错误、端口冲突或者网络配置问题。给出一些排查建议,比如检查token是否正确,查看日志等。 最后,生成相关问题,帮助用户进一步了解优化方法或者其他工具对比,比如和FRP的区别,如何监控使用情况等。这样用户如果有其他需求,可以继续探索。</think>### 使用 Ngrok Docker 镜像实现内网穿透的配置教程 #### 一、环境准备 1. **安装 Docker** 确保系统中已安装 Docker Engine。验证命令: ```bash docker --version ``` 若未安装,参考 [Docker 官网](https://docs.docker.com/engine/install/) 完成安装[^1]。 2. **获取 Ngrok 镜像** 拉取官方 Ngrok Docker 镜像: ```bash docker pull ngrok/ngrok:latest ``` --- #### 二、配置文件设置 1. **创建配置文件 `ngrok.yml`** 新建目录并创建配置文件,例如 `/home/ngrok/ngrok.yml`,内容如下: ```yaml version: "2" authtoken: your_ngrok_auth_token # 替换为你的 Ngrok Token tunnels: webapp: proto: http addr: 80 # 本地服务的端口 ssh: proto: tcp addr: 22 # 本地 SSH 端口 ``` *注:`authtoken` 需在 [Ngrok 官网](https://dashboard.ngrok.com/get-started/your-authtoken) 注册获取[^5]。* --- #### 三、启动容器 1. **直接运行命令(推荐)** 使用 `host` 网络模式直接绑定本地端口: ```bash docker run -it --rm --net=host \ -v /home/ngrok/ngrok.yml:/etc/ngrok.yml \ ngrok/ngrok:latest start --all --config /etc/ngrok.yml ``` *参数说明:* - `--net=host`: 容器共享宿主机网络栈,避免端口映射冲突 - `-v`: 挂载配置文件到容器内 2. **通过 Docker Compose 部署** 创建 `docker-compose.yml`: ```yaml version: '3' services: ngrok: image: ngrok/ngrok:latest network_mode: host volumes: - /home/ngrok/ngrok.yml:/etc/ngrok.yml command: start --all --config /etc/ngrok.yml ``` 启动服务: ```bash docker-compose up -d ``` --- #### 四、验证与使用 1. **查看运行日志** 执行以下命令观察隧道状态: ```bash docker logs -f ngrok_container_name ``` 成功后会显示公网 URL(如 `https://abc123.ngrok.io`)。 2. **访问服务** 通过生成的 URL(如 `https://abc123.ngrok.io`)访问本地服务。 --- #### 五、高级配置 1. **固定域名** 需升级 Ngrok 付费计划,在 `ngrok.yml` 中指定自定义域名: ```yaml tunnels: webapp: proto: http addr: 80 hostname: yourdomain.ngrok.io # 付费功能 ``` 2. **身份验证** 添加 HTTP 基础认证(可选): ```yaml tunnels: webapp: proto: http addr: 80 basic_auth: - "username:password" ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值