# K8s 起本地mysql服務 #### 用docker起k8s的服務 1. setting -> 勾選Enable 且 Apply之後重新開機.  2. 再回到這個頁面, 按下Reset Kubernetes Cluster.  3. cmd 確認是否成功連上  --- #### 以k8s起mysql 1. cd 文檔資料夾 ```yaml= kubectl apply -f mysql.yaml ``` #### mysql.yaml 文檔內容 windows和mac有不同的volume路徑, 若是windows <YOUR_USERNAME>依照C槽user名字 若是mac <volumes-name>依照文檔上自定義的名字 ```yaml= apiVersion: v1 kind: Service metadata: labels: app: aprd-mysql tier: backend name: aprd-mysql namespace: default spec: type: NodePort ports: - name: "mysql" port: 3306 targetPort: 3306 nodePort: 30356 selector: hktv: aprd-mysql status: loadBalancer: {} --- apiVersion: apps/v1 kind: Deployment metadata: labels: app: aprd-mysql tier: backend name: aprd-mysql namespace: default spec: replicas: 1 selector: matchLabels: hktv: aprd-mysql strategy: {} template: metadata: creationTimestamp: null labels: hktv: aprd-mysql spec: containers: - args: - --innodb_use_native_aio=0 - --innodb_buffer_pool_size=64M - --default-time-zone=+08:00 - --lower_case_table_names=1 - --character-set-server=utf8 env: - name: MYSQL_ROOT_PASSWORD value: root image: mysql:8.0 name: aprd-mysql ports: - containerPort: 3306 resources: requests: cpu: 200m memory: 512Mi limits: cpu: 500m memory: 1Gi volumeMounts: - name: mysql-volume mountPath: /var/lib/mysql restartPolicy: Always volumes: - name: mysql-volume hostPath : #mac path : "/var/lib/docker/volumes/<volumes-name>/_data" # windows path : "/run/desktop/mnt/host/c/Users/<YOUR_USERNAME>/docker_volumes/aprd_db/" ``` 以下代表mysql運行成功  #### 關於volumes/hostPath/path可以怎麼找到,共兩個步驟 ```shell= # 打印出有哪些volume docker volume ls # 挑選其中一個volume name 來定位Mountpoint,而Mountpoint就是path. docker volume instpect <volume-name> ```  最後順利連上port 30359的mysql.  reference: https://blog.csdn.net/u012140251/article/details/108099769 https://kubernetes.io/zh/docs/tasks/run-application/run-single-instance-stateful-application/ https://docs.docker.com/storage/volumes/
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up