我已经在google gcloud
容器引擎上部署了我的应用程序。我的申请要求MySQL
。应用程序运行良好并正确连接到MySQL
。 但我想连接MySQL
数据库从我的本地机器使用MySQL
客户端(Workbench
,或命令行),有人可以帮助我如何将其公开到本地机器?我怎样才能在gcloud
shell上打开MySQ
L命令行?如何连接MySQL上运行的Kubernetes
我已经运行下面的命令,但外部IP是不存在的: -
$ kubectl get deployment
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
app-mysql 1 1 1 1 2m
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
app-mysql-3323704556-nce3w 1/1 Running 0 2m
$ kubectl get service
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
app-mysql 11.2.145.79 <none> 3306/TCP 23h
编辑
我使用下面yml
文件
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: app-mysql
spec:
replicas: 1
template:
metadata:
labels:
app: app-mysql
spec:
volumes:
- name: data
emptyDir: {}
containers:
- name: mysql
image: mysql:5.6.22
env:
- name: MYSQL_USER
value: root
- name: MYSQL_DATABASE
value: appdb
ports:
- containerPort: 3306
volumeMounts:
- name: data
mountPath: /var/lib/mysql/
---
apiVersion: v1
kind: Service
metadata:
name: app-mysql
spec:
selector:
app: app-mysql
ports:
- port: 3306
我不知道这是否正确,但它不适用于我..它显示下面'转发从127.0.0.1:3306 - > 3306 转发从[:: 1]:3306 - > 3306'和之后,当我运行'kubectl获取服务'它没有显示外部IP –
你将不得不在你的本地机器上使用MySQL客户端,并连接到'localhost:3306' 。这将使用您使用'kubectl port-forward'创建的隧道。 –
现在工作正常,我已经重新安装了gcloud。谢谢你的帮助 –