多克尔 - 撰写:mysqld的:无法创建/写入文件 '在/ var / lib中/ MySQL的/ is_writable'(ERRCODE:13 - 权限被拒绝)

问题描述 投票:2回答:2

开始撰写泊坞窗的数据库服务时,我有一个问题:

 version: '3'
 services:

 # Mysql DB
    db:
        image: percona:5.7
        #build: ./docker/mysql
        volumes:
          - "./db/data:/var/lib/mysql"
          - "./db/init:/docker-entrypoint-initdb.d"
          - "./db/backups:/tmp/backups"
          - "./shared/home:/home"   
          - "./shared/root:/home"  
        restart: unless-stopped
        environment:
            MYSQL_ROOT_PASSWORD: root
            MYSQL_DATABASE: db_name
            MYSQL_USER: user
            MYSQL_PASSWORD: pass
       ports:
       - "3307:3306"

我已经试过,没有运气的一切:

"./db/data:/var/lib/mysql:rw"

创建dockerfile和构建,而不是像创建:

FROM percona:5.7

RUN adduser mysql
RUN sudo chown mysql /var/lib/mysql
RUN sudo chgrp mysql /var/lib/mysql

我也尝试添加上数据库服务的用户:

user: "1000:50"

但是,任何那些能够解决的..我失去了什么?

MySQL 5.7 installation error `mysqld: Can't create/write to file '/var/lib/mysql/is_writable'`

mysql docker docker-compose
2个回答
2
投票

我不得不改变./db/data用户:组999:999,所以搬运工用户是谁正在改变。

sudo chown 999:999 ./db/data

1
投票

确保谁运行泊坞窗的用户可以访问./db/data

# Not in the dockerfile
sudo chown $(whoami) ./db/data
sudo chgrp $(whoami) ./db/data

码头工人告诉你,你没有权限,这也可能意味着你需要验证您共享卷./db/data需要有正确的权限。

© www.soinside.com 2019 - 2024. All rights reserved.