我正在尝试从一个容器访问同一节点内另一个容器的暴露端口,但是我不知道如何使用管道中的kubernetes插件来做到这一点。
在我的脚本中,我创建了两个容器并公开了数据库容器的端口,在另一个容器中,我试图访问主机的端口1521。
def label = "mypod-${UUID.randomUUID().toString()}"
podTemplate(label: label, containers: [
containerTemplate(name: 'oracle', image: 'repo:5000/ng-oracle:latest',privileged: true, ttyEnabled: true, command: 'cat', ports:[
portMapping(name: 'oracle1', containerPort: 1521, hostPort: 1521),
portMapping(name: 'oracle2', containerPort: 22, hostPort: 2222),
]),
containerTemplate(name: 'maven', image: 'repo:5000/ng-satelites:4', ttyEnabled: true, command: 'cat')
]) {
node(label) {
stage('all') {
container('maven') {
stage('test-db') {
sh 'curl $(/sbin/ip route|awk \'/default/ { print $3 }\'):1521'
}
}
}
}
}
答案 0 :(得分:0)
在Kubernetes POD内,所有容器都通过localhost“互相看到”。因此,您应该能够从$entryTemplate = @'
<individual>
<Name>$($_.Name)</Name>
<Item>$($_.Item)</Item>
<Purchase Price>$($_."Purchase Price")</Purchase Price>
</individual>
'@
上的oracle
容器连接到maven
容器。