无法访问 JFrog Artifactory 运行 作为 Google 云上的 Docker 容器
Unable to access the JFrog Artifactory running as Docker container on Google Cloud
我在 GCP 上有一个虚拟机 运行,并在上面安装了我的 docker。我的 NGINX Web 服务器 运行 上有一个静态保留 external/public IP 地址。我可以通过 public IP 地址轻松访问该站点。现在,我在这个 VM 上有我的 Artifactory 运行 作为 Docker 容器,整个想法是使用相同的 public 访问这个 Docker 容器(准确地说是 Artifactory)具有特定端口的 IP 地址,比如 8081。我已经在 NGINX Web 服务器中配置了反向代理,以绕过对我的 Artifactory docker 容器的内部 IP 地址的请求,但请求没有到达它并且无法访问 Artifactory。
Docker 容器是 运行:-
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a4119d923hd8 docker.bintray.io/jfrog/artifactory-pro:latest "/entrypoint-artifac…" 57 minutes ago Up 57 minutes 0.0.0.0:8081->8081/tcp my-app-dev-artifactory-pro
这是我的反向代理设置:-
server {
listen 81;
listen [::]:81;
server_name [My External Public IP Address];
location / {
proxy_pass https://localhost:8081;
}
}
既然你是用GCP来运行这个,我觉得你的问题很简单。首先,您不必拥有 Nginx 即可在 Docker 容器内访问 Artifactory。您应该能够使用 IP 和端口(例如 XX.XX.XX.XX:8081)轻松访问它,我可以看到在 Nginx 配置中您正在监听 Artifactory 未使用的端口 81。我认为这里的问题是您在实例配置中不允许与您的 GCP 实例进行 HTTP 通信,或者您没有在 "docker run" 命令中映射端口。
可以通过运行ning命令"docker ps"查看端口是否被映射,查看"PORTS"部分是否有端口被映射。如果没有,您将需要映射端口(8081 到 8081)并确保您的 GCP 实例启用了 HTTP 流量,然后您将能够使用 IP:PORT 访问 Artifactory。
我在 GCP 上有一个虚拟机 运行,并在上面安装了我的 docker。我的 NGINX Web 服务器 运行 上有一个静态保留 external/public IP 地址。我可以通过 public IP 地址轻松访问该站点。现在,我在这个 VM 上有我的 Artifactory 运行 作为 Docker 容器,整个想法是使用相同的 public 访问这个 Docker 容器(准确地说是 Artifactory)具有特定端口的 IP 地址,比如 8081。我已经在 NGINX Web 服务器中配置了反向代理,以绕过对我的 Artifactory docker 容器的内部 IP 地址的请求,但请求没有到达它并且无法访问 Artifactory。
Docker 容器是 运行:-
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a4119d923hd8 docker.bintray.io/jfrog/artifactory-pro:latest "/entrypoint-artifac…" 57 minutes ago Up 57 minutes 0.0.0.0:8081->8081/tcp my-app-dev-artifactory-pro
这是我的反向代理设置:-
server {
listen 81;
listen [::]:81;
server_name [My External Public IP Address];
location / {
proxy_pass https://localhost:8081;
}
}
既然你是用GCP来运行这个,我觉得你的问题很简单。首先,您不必拥有 Nginx 即可在 Docker 容器内访问 Artifactory。您应该能够使用 IP 和端口(例如 XX.XX.XX.XX:8081)轻松访问它,我可以看到在 Nginx 配置中您正在监听 Artifactory 未使用的端口 81。我认为这里的问题是您在实例配置中不允许与您的 GCP 实例进行 HTTP 通信,或者您没有在 "docker run" 命令中映射端口。 可以通过运行ning命令"docker ps"查看端口是否被映射,查看"PORTS"部分是否有端口被映射。如果没有,您将需要映射端口(8081 到 8081)并确保您的 GCP 实例启用了 HTTP 流量,然后您将能够使用 IP:PORT 访问 Artifactory。