gpt4 book ai didi

docker - 如何在 Vapor 上设置 ngrok 以在本地使用拥有的域?

转载 作者:行者123 更新时间:2023-12-03 07:55:34 31 4
gpt4 key购买 nike

当使用 Docker 容器在我的 Vapor 服务器应用程序上设置 ngrok 时,我无法使用我拥有的自定义域创建安全的 Web 连接。

我想使用我的 docker-compose.yml 文件来读取带有设置的 ngrok.yml 文件,但是使用该命令我得到了更好的结果线。

假设拥有的域是:api.personal_domain.com。来自 ngrok.com 的 CNAME DNS 记录已添加到我的域名提供商中。

我运行此命令以在本地主机上启动“安全 Web 连接”。

$ docker run -it -e NGROK_AUTHTOKEN=<NGROK_PERSONAL_TOKEN> ngrok/ngrok http https://127.0.0.1:8080 --domain=api.personal_domain.com

但仍然发生故障,并显示 404 Not Found。我可以看到服务器没有收到请求。

这是在 Vapor 应用程序上进行的 postgres 数据库的配置:

app.databases.use(.postgres(
hostname: "api.personal_domain.com",
port: 5433,
username: "user_stackoverflow",
password: "password_stackoverflow",
database: "personal_domain_db_develop"
), as: .psql)

这是 docker-compose.yml 文件中的设置:

ngrok:
image: ngrok:latest
restart: unless-stopped
command:
- "start"
- "--all"
- "--config"
- "/etc/ngrok.yml"
volumes:
- ./ngrok.yml:/etc/ngrok.yml
ports:
- 4040:

ngrok.yml 文件设置如下:

version: "2"
authtoken: <NGROK_PERSONAL_TOKEN>
tunnels:
server:
addr: 5433
proto: http
host_header: localhost
domain: api.personal_domain.com

从那里,我在终端中运行 $ docker compose up 但出现错误。

[+] Running 1/1
✘ ngrok Error 2.1s
Error response from daemon: pull access denied for ngrok, repository does not exist or may require 'docker login': denied: requested access to the resource is denied

我希望在使用 docker 在本地主机上开发服务器时拥有安全的 HTTPS 连接。

如何正确设置 ngrok 隧道,以便我的 Vapor 应用程序在安全的 Web 连接上本地运行?

最佳答案

来自ngrok的PM在这里。正如 @john-hanley 所提到的,您应该在 docker compose 文件中使用 image: ngrok/ngrok:latest 。以下是 using ngrok with Docker 的 ngrok 文档页面的链接.

此外,我注意到在您的第一个 docker 命令中,您使用的是端口 4040,这恰好是 ngrok 默认用于本地检查接口(interface)和代理 API 的端口。根据您的配置文件,您需要的 docker 命令是:

docker run --net=host -it -e NGROK_AUTHTOKEN=xyz ngrok/ngrok:latest http 5433 --domain api.personal_domain.com

如果您使用的是 Mac 或 Windows 计算机,则命令为:

docker run -it -e NGROK_AUTHTOKEN=xyz ngrok/ngrok:latest http host.docker.internal:5433 --domain api.personal_domain.com

关于docker - 如何在 Vapor 上设置 ngrok 以在本地使用拥有的域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76124274/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com