Rumah  >  Soal Jawab  >  teks badan

Desktop Docker, Kubernetes dan MySql: Tidak dapat melekapkan volum pada /var/lib/mysql/

<p>Saya perlu melekapkan direktori /var/lib/mysql sebagai volum berterusan supaya kandungan pangkalan data tidak hilang setiap kali komputer dimulakan semula (saya menggunakan Docker Desktop dan Windows).</p> <p>但是启动Pod时,出现以下错误:</p> <pre class="brush:php;toolbar:false;">2023-03-07 21:10:15+00:00 [Nota] [Entrypoint]: Skrip Entrypoint untuk MySQL Server 8.0.32-1.el8 bermula. find: '/var/lib/mysql/': Operasi tidak dibenarkan find: '/var/lib/mysql': Operasi tidak dibenarkan chown: menukar pemilikan '/var/lib/mysql/': Operasi tidak dibenarkan chown: menukar pemilikan '/var/lib/mysql': Operasi tidak dibenarkan</pre> <p>这是部署文件:</p> <pre class="brush:php;toolbar:false;">jenis: StorageClass apiVersion: storage.k8s.io/v1 metadata: nama: storan tempatan pembekal: kubernetes.io/no-provisioner reclaimPolicy: Kekalkan volumeBindingMode: WaitForFirstConsumer --- apiVersion: v1 jenis: PersistentVolume metadata: nama: mysql-pv spesifikasi: kapasiti: penyimpanan: 500M volumMod: Sistem fail mod akses: - BacaTulis Sekali storageClassName: storan tempatan tempatan: laluan: /c/data/db nodeAffinity: diperlukan: nodeSelectorTerms: - matchExpressions: - kunci: kubernetes.io/hostname pengendali: Dalam nilai: - docker-desktop --- apiVersion: v1 jenis: PersistentVolumeClaim metadata: nama: mysql-pvc spesifikasi: mod akses: - BacaTulis Sekali storageClassName: storan tempatan sumber: permintaan: penyimpanan: 500M --- apiVersion: v1 jenis: Perkhidmatan metadata: nama: mysql spesifikasi: pemilih: aplikasi: mysql pelabuhan: - pelabuhan: 3306 TargetPort: 3306 --- apiVersion: v1 jenis: Perkhidmatan metadata: nama: mysql-lb spesifikasi: jenis: LoadBalancer pemilih: aplikasi: mysql pelabuhan: - pelabuhan: 3306 TargetPort: 3306 --- apiVersion: apps/v1 jenis: StatefulSet metadata: label: aplikasi: mysql nama: mysql spesifikasi: nama perkhidmatan: mysql replika: 1 pemilih: matchLabels: aplikasi: mysql templat: metadata: label: aplikasi: mysql spesifikasi: bekas: - imej: mysql:terkini nama: mysql pelabuhan: - Port kontena: 3306 sumber: {} volumeMounts: - nama: mysql-volume mountPath: /var/lib/mysql env: - nama: MYSQL_ROOT_PASSWORD nilai Daripada: configMapKeyRef: kunci: MYSQL_ROOT_PASSWORD nama: mysql-env - nama: MYSQL_ROOT_USERNAME nilai Daripada: configMapKeyRef: kunci: MYSQL_ROOT_USERNAME nama: mysql-env jilid: - nama: mysql-volume Tuntutan Volume berterusan: Nama tuntutan: mysql-pvc</pre> <p>如果我对卷使用另一个装载路径,pod 会启动,但当然,每次重新启动计无算会丢失。</p> <p>Saya juga cuba menukar pemilik direktori dengan melaksanakan perintah chown sebelum memasang kelantangan: </p> <pre class="brush:php;toolbar:false;">bekas: - imej: mysql:terkini nama: mysql pelabuhan: - Port kontena: 3306 sumber: {} perintah: - chown - -R - 999:999 - /var/lib/mysql volumeMounts: - nama: mysql-volume mountPath: /var/lib/mysql</pre> <p>Tetapi apabila memulakan pod saya mendapat ralat berikut: <kod>chown: Tidak dapat membaca direktori '/var/lib/mysql': Operasi tidak dibenarkan</code></p> <p>Terima kasih atas bantuan anda. </p>
P粉627427202P粉627427202415 hari yang lalu546

membalas semua(1)saya akan balas

  • P粉103739566

    P粉1037395662023-09-02 09:02:55

    Tambah

    securityContext:
        runAsUser: 999
        allowPrivilegeEscalation: false

    Pada komponen StatefulSet

    balas
    0
  • Batalbalas