gpt4 book ai didi

mysql - 如何在内部连接mysql kubernetes容器与nodejs k8s容器?

转载 作者:太空宇宙 更新时间:2023-11-03 21:51:05 25 4
gpt4 key购买 nike

我在同一命名空间下创建了 mysql k8s 容器和 nodejs k8s 容器。我无法连接 mysql 数据库。(sequalize)

我尝试使用 ''' http://mysql.e-commerce.svc.cluster.local:3306 进行连接'''。但是我收到“SequelizeHostNotFoundError”错误。

这是我的服务和部署 yaml 文件。

kind: Service
metadata:
labels:
app: mysql
name: mysql
namespace: e-commerce
spec:
type: NodePort
ports:
- port: 3306
targetPort: 3306
nodePort: 30306
selector:
app: mysql
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: mysql
namespace: e-commerce
spec:
replicas: 1
template:
metadata:
labels:
app: mysql
spec:
containers:
- image: mysql:5.6
name: mysql-container
env:
- name: MYSQL_ROOT_PASSWORD
value: password
ports:
- containerPort: 3306
name: mysql
volumeMounts:
- name: mysql-persistent-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: mysql-pv-claim```

最佳答案

来自 ClusterIP 对我有用或更好的方法来使用本地集群服务的主机名。 db-mysql.default.svc.cluster.local。这样,如果您的集群重新启动并且您的 IP 发生变化,那么您就可以解决这个问题。

enter image description here

关于mysql - 如何在内部连接mysql kubernetes容器与nodejs k8s容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57466395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com