从预览环境中,我想访问位于暂存环境中的数据库(在命名空间jx-staging中)。
我正在尝试遵循Jenkins-X文档中的Service Linking,但没有成功。文档并不清楚将服务链接定义放在哪里。
我创建了一个包含以下内容的服务文件charts/preview/resources/mysql.yaml,但没有创建服务链接。
kind: Service
apiVersion: v1
metadata:
name: mysql
spec:
type: ExternalName
externalName: mysql.jx-staging.svc.cluster.local
ports:
- port: 3306JX环境:
jx version:
NAME VERSION
jx 1.3.688
jenkins x platform 0.0.3125
Kubernetes cluster v1.10.9-gke.5
kubectl v1.10.7
helm client v2.12.1+g02a47c7
helm server v2.12.0+gd325d2a
git git version 2.11.0
Operating System Debian GNU/Linux 9.6 (stretch)在哪里以及如何定义服务链接?
GitHub问题:How to link external service in preview environment
发布于 2019-01-07 17:33:44
解决方案是将mysql.yaml从resources移动到templates子文件夹:
charts/preview/templates/mysql.yaml该问题是由Service Linking文档中的拼写错误引起的,该错误现已更正。
发布于 2019-01-04 16:03:56
顺便说一句,还有一个FAQ entry on adding more resources to a preview。
你的Service YAML在我看来很不错。您是否看到在创建预览环境时创建的Service?
可以通过键入jx get preview查找名称空间,然后尝试kubectl get service -n jx-myuser-myapp-pr-1查看环境中是否有Service
https://stackoverflow.com/questions/54027529
复制相似问题