Linux中Docker下部署Minio啟動提示權(quán)限不足,報錯:
ERROR Unable to initialize backend: mkdir /data/.minio.sys: permission denied
出現(xiàn)的原因:
官方說明中,容器內(nèi)部,minio使用的是1001的一個用戶權(quán)限進行操作,
所以映射目錄有會有權(quán)限不足的情況
解決方案:
1.對于啟動命令或者docker-compose.yml中的操作
1.1 docker命令直接啟動
docker run -d \\\\\\\\
--privileged=true \\\\\\\\
--restart=always \\\\\\\\
-e TZ=Asia/Shanghai \\\\\\\\
-e MINIO_ROOT_USER=XXX \\\\\\\\
-e MINIO_ROOT_PASSWORD=XXX \\\\\\\\
-p "9000:9000" \\\\\\\\
-p "9001:9001" \\\\\\\\
-v "/data/minio/data:/data" \\\\\\\\
-v "/data/minio/config:/root/.minio"
-name minio \\\\\\\\
bitnami/minio:2023.7.18
1.2 docker-compose.yml
version: '3'
services:
minio:
image: bitnami/minio:2023.7.18
container_name: minio
restart: always
# 在docker-compose.yml中需要添加這個命令
privileged: true
ports:
- "9000:9000"
- "9001:9001"
environment:
- TZ=Asia/Shanghai
- MINIO_ROOT_USER=XXX
- MINIO_ROOT_PASSWORD=XXX
volumes:
- "/data/minio/data:/data"
- "/data/minio/config:/root/.minio"
2.對于映射目錄的操作
把需要的目錄都創(chuàng)建好,比如需要映射data和config目錄:
/data/minio/data
/data/minio/config
包含子文件夾的授權(quán) chown -R 1001:1001 /data/minio
注意: 一定要把文件夾都先創(chuàng)建好,不然容器啟動后容器創(chuàng)建的用戶組和權(quán)限都會是root,而不是1001,導(dǎo)致啟動失敗;