2023-03-07 21:10:15+00:00 [注意] [入口点]:MySQL Server 8.0.32-1.el8 的入口点脚本开始了。 find: '/var/lib/mysql/': 不允许操作 查找:'/var/lib/mysql':不允许操作 chown:更改“/var/lib/mysql/”的所有权:不允许操作 chown:更改“/var/lib/mysql”的所有权:不允许操作</pre> <p>这是配置文件:</p>kind: StorageClass api版本:storage.k8s.io/v1 元数据: 名称:本地存储 配置者:kubernetes.io/no-provisioner 回收政策:保留 VolumeBindingMode:WaitForFirstConsumer --- api版本:v1 种类:持久卷 元数据: 名称:mysql-pv 规格: 容量: 存储空间:500M VolumeMode:文件系统 访问模式: - 读写一次 storageClassName:本地存储 当地的: 路径:/c/data/db 节点亲和力: 必需的: 节点选择器条款: - 匹配表达式: - 密钥:kubernetes.io/主机名 运算符:In 价值观: - docker-桌面 --- api版本:v1 种类:持久卷声明 元数据: 名称:mysql-pvc 规格: 访问模式: - 读写一次 storageClassName:本地存储 资源: 要求: 存储空间:500M --- api版本:v1 种类: 服务 元数据: 名称:mysql 规格: 选择器: 应用程序: mysql 端口: - 端口:3306 目标端口:3306 --- api版本:v1 种类: 服务 元数据: 名称:mysql-lb 规格: 类型:负载均衡器 选择器: 应用程序: mysql 端口: - 端口:3306 目标端口:3306 --- api版本:apps/v1 种类:StatefulSet 元数据: 标签: 应用程序: mysql 名称:mysql 规格: 服务名称:mysql 副本:1 选择器: 匹配标签: 应用程序: mysql 模板: 元数据: 标签: 应用程序: mysql 规格: 容器: - 图像:mysql:最新 名称:mysql 端口: - 集装箱端口:3306 资源: {} 体积安装: - 名称:mysql-volume 挂载路径:/var/lib/mysql 环境: - 名称:MYSQL_ROOT_PASSWORD 值来自: 配置映射密钥参考: 键:MYSQL_ROOT_PASSWORD 名称:mysql-env - 名称:MYSQL_ROOT_USERNAME 值来自: 配置映射密钥参考: 键:MYSQL_ROOT_USERNAME 名称:mysql-env 卷: - 名称:mysql-volume 持久卷声明: 声明名称:mysql-pvc<p>如果我对卷使用另一个装载路径,pod会启动,但是当然,每次重新启动计算机时数据库内容都会丢失。</p> <p>我还尝试通过在安装卷之前执行 chown 命令来更改目录的所有者:</p> <pre class="brush:php;toolbar:false;">containers: - image: mysql:latest name: mysql ports: - containerPort: 3306 resources: {} command: - chown - -R - 999:999 - /var/lib/mysql volumeMounts: - name: mysql-volume mountPath: /var/lib/mysql</pre> <p>但是启动 pod 时出现以下错误: <code>chown:无法读取目录“/var/lib/mysql”:不允许操作</code></p> <p>感谢您的帮助。</p>
P粉1037395662023-09-02 09:02:55
添加
securityContext: runAsUser: 999 allowPrivilegeEscalation: false
在 StatefulSet 组件上