错误:无法在端口8080上连接到Cloud Shell(正在部署Google kubernetes云中的Jenkins)

时间:2018-08-10 20:12:27

标签: jenkins kubernetes

我已按照本指南中的所有步骤进行操作:

https://cloud.google.com/solutions/jenkins-on-kubernetes-engine-tutorial

并确认它们均已成功完成。

但是当我到达在8080端口上预览应用程序的最后一部分时,我得到了错误:

Error: Could not connect to Cloud Shell on port 8080.
Ensure your server is listening on port 8080 and try again.

我也尝试将端口更改为8084,但结果相同。

关于如何调试/修复此问题的任何建议?

以下是我使用本地安装的gcloud客户端在本地计算机上执行的最后一些命令的结果:

$ kubectl get pods
NAME                          READY     STATUS    RESTARTS   AGE
cd-jenkins-7c786475dd-bz7kj   1/1       Running   0          2m

$ printf $(kubectl get secret cd-jenkins -o jsonpath="{.data.jenkins-admin-password}" | base64 --decode);echo
********
$ export POD_NAME=$(kubectl get pods -l "component=cd-jenkins-master" -o jsonpath="{.items[0].metadata.name}")
$ kubectl port-forward $POD_NAME 8080:8080 >> /dev/null &
[1] 24685
$ echo $POD_NAME
cd-jenkins-7c786475dd-bz7kj

1 个答案:

答案 0 :(得分:0)

通过本地计算机访问Jenkins:

您可以在本地计算机上运行所有kubectl命令,但是如果您在本地计算机上运行kubectl port-forwarding,则必须通过该地址http://localhost:8080/访问Jenkins页面。

通过Google Cloud Console访问Jenkins:

在Google Cloud Console的右上菜单中,只需单击以下图标>_(激活Cloud Shell),然后运行port-forwarding命令:

export POD_NAME=$(kubectl get pods --namespace default -l "app.kubernetes.io/component=jenkins-master" -l "app.kubernetes.io/instance=cd" -o jsonpath="{.items[0].metadata.name}")
kubectl port-forward $POD_NAME 8080:8080 >> /dev/null &

现在,如果您单击图标Web preview-> Preview on port 8080,您应该会看到登录页面。

请记住,仅在kubectl进程运行时转发端口。