[英]Docker docker-entrypoint-initdb.d execute by defined order
[英]Sql script file is not getting copied to docker-entrypoint-initdb.d folder of mysql container?
我的init.sql(腳本)未復制到docker-entrypoint-initdb.d。 請注意,當我嘗試在本地或在服務器上運行該問題時,不會發生此問題。 僅當通過創建構建和發布管道來使用天藍色devop時,才會發生這種情況。
如果將持久性卷YAML文件放置在天藍色的存儲庫中,則該文件中的hostpath(包含sql腳本)似乎存在錯誤。
mysqlpersistantvolume.yaml
kind: PersistentVolume
apiVersion: v1
metadata:
name: mysql-initdb-pv-volume
labels:
type: local
app: mysql
spec:
storageClassName: manual
capacity:
storage: 1Mi
accessModes:
- ReadOnlyMany
hostPath:
path: "/devops-sample" // main project folder in azure repos which
contains all files including sql script.
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: mysql-initdb-pv-claim
labels:
app: mysql
spec:
storageClassName: manual
accessModes:
- ReadOnlyMany
resources:
requests:
storage: 1Mi
mysql.yaml
apiVersion: v1
kind: Service
metadata:
name: mysql
spec:
ports:
- port: 3306
protocol: TCP
targetPort: 3306
selector:
app: mysql
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql
spec:
selector:
matchLabels:
app: mysql
strategy:
type: Recreate
template:
metadata:
labels:
app: mysql
spec:
containers:
- image: mysql:5.6
name: mysql
imagePullPolicy: "IfNotPresent"
env:
- name: MYSQL_ROOT_PASSWORD
value: root
- name: MYSQL_PASSWORD
value: kovaion
- name: MYSQL_USER
value: vignesh
- name: MYSQL_DATABASE
value: data-core
ports:
- containerPort: 3306
name: mysql
volumeMounts:
- name: mysql-persistent-storage
mountPath: /docker-entrypoint-initdb.d
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: mysql-initdb-pv-claim
當前文件夾docker-entrypoint-initdb.d似乎是空的(什么都沒有被復制)。 如果將SQL腳本放在devops-sample文件夾內的azure倉庫中,如何在mysql持久性卷中設置完整的主機路徑?
Mysql數據目錄的存儲位置錯誤。 您應該將持久性存儲安裝到/ var / lib / mysql / data
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.