[英]IP Pod to container environment variable
我在部署文件中有一个有角度的应用程序和一些用于后端的节点容器,我如何获得容器的后端以连接前端。
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: frontend
spec:
replicas: 1
template:
metadata:
labels:
app: frontend
spec:
containers:
- name: frontend
image: container_imaer_backend
env:
- name: IP_BACKEND
value: here_i_need_my_container_ip_pod
ports:
- containerPort: 80
protocol: TCP
我建议不要使用IP来使用DNS名称,而在这里有更多信息: https : //kubernetes.io/docs/concepts/services-networking/dns-pod-service/
但基本上它是http://metadata-name.namespace.svc.cluster.local,因此对于该部署,它是http://frontend.default.svc.cluster.local
这样比较好,因为本地IP地址可以更改。
您可以将Pod字段值用于环境(参考: 此处 )。 这样,您可以在环境变量中设置POD IP。
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: mysql
name: mysql
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: mysql:5.6
imagePullPolicy: IfNotPresent
env:
- name: MYSQL_ROOT_PASSWORD
value: root
- name: POD_IP
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: status.podIP
ports:
- containerPort: 3306
name: mysql
protocol: TCP
volumeMounts:
- mountPath: /var/lib/mysql
name: data
volumes:
- name: data
emptyDir: {}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.