就VM而言,它看起来
Jenkins确实确实在运行(基于输出
netstat和正在运行的服务列表):
tcp6 0 0 :::8081 :::* LISTEN 17917/java
Jenkins是一个Java应用程序,因此该过程可能仅显示为
java。
看来您正在尝试通过实例的公共IP和端口访问服务。Google Compute Engine(GCE)防火墙可能阻止了此操作,因为默认情况下,GCE
VM中来自外部IP的所有传入端口均被阻止。
如果您的目标是从任何公共IP访问此计算机上的此端口,则可以按照以下步骤授予访问权限:
[使用gcloud](https://cloud.google.com/sdk/gcloud/reference/compute/firewall-
rules/)
# Create a new firewall rule that allows INGRESS tcp:8081 with VMs containing tag 'allow-tcp-8081'gcloud compute firewall-rules create rule-allow-tcp-8081 --source-ranges 0.0.0.0/0 --target-tags allow-tcp-8081 --allow tcp:8081# Add the 'allow-tcp-8081' tag to a VM named VM_NAMEgcloud compute instances add-tags VM_NAME --tags allow-tcp-8081# If you want to list all the GCE firewall rulesgcloud compute firewall-rules list
使用云控制台
Menu -> Networking -> Firewall Rules
Create Firewall Rule
为防火墙规则选择以下设置:
Name
规则-rule-allow-tcp-8081
或您希望此防火墙规则使用的其他任何名称。Direction
是ingress
Action on match
是Allow
Targets
是Specified target tags
Target tags
是allow-tcp-8081
Source IP ranges
是0.0.0.0/0
(或者如果您有一组IP范围,您知道将是唯一访问此范围的IP范围,请改用它们以提供更严格的限制)Protocols and ports
是tcp:8081
- 选择
Create
按钮创建此防火墙规则。 创建上述防火墙规则后,您需要将标签添加
allow-tcp-8081
到需要应用此规则的所有实例。在您的情况下:打开GCE
VM Instances
页面- 选择运行Jenkins的实例
- 在
VM instance details
页面中,选择Edit
最顶部的链接。 - 在
Network Tags
框中,输入allow-tcp-8081
以将标签应用于该实例。 - 选择
Save
以保存更改。
现在,花几秒钟到几分钟使更改生效,您将能够访问jenkins Web URL。
您还可以浏览 防火墙规则
的文档,以更好地了解它们的工作方式和配置方式。
注意: 通过使用
0.0.0.0/0,您将向整个Internet开放此端口,以便世界各地的客户端都可以连接到该端口。请注意这样做的安全隐患。



