1、問題描述
- centos下使用docker方式安裝minio,運行時報錯,報錯詳情為ERROR Unable to initialize backend: mkdir /data/.minio.sys: permission denied。
2、解決方案
- minio官方描述如下:
- minio需要一個持久卷來存儲配置和應用數據。不過,如果只是為了測試一下,您可以通過簡單地傳遞一個目錄(在下面的示例中為/data)啟動minio。這個目錄會在容器啟動時在容器的文件系統中創建,不過所有的數據都會在容器退出時丟失。
docker run \
-p 9000:9000 \
-p 9001:9001 \
-e "MINIO_ROOT_USER=AKIAIOSFODNN7EXAMPLE" \
-e "MINIO_ROOT_PASSWORD=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
quay.io/minio/minio server /data --console-address ":9001"
- 上面這種所有的數據都會在容器退出時丟失
- 要創建具有永久存儲的minio容器,需要將本地持久目錄從主機操作系統映射到虛擬配飾~/.minio並導出/data目錄。因此,運行一下命令:
docker run \
-p 9000:9000 \
-p 9001:9001 \
--name minio1 \
-v /mnt/data:/data \
-e "MINIO_ROOT_USER=AKIAIOSFODNN7EXAMPLE" \
-e "MINIO_ROOT_PASSWORD=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
quay.io/minio/minio server /data --console-address ":9001"
- 然后就報錯了,問題1:ERROR Unable to initialize backend: mkdir /data/.minio.sys: permission denied
- 首先給這個文件夾賦予權限:chmod -R 777 /mnt/data
- 然后執行如下:
docker run \
-p 9000:9000 \
-p 9001:9001 \
--name minio1 \
-v /mnt/data:/data:z \
-e "MINIO_ROOT_USER=AKIAIOSFODNN7EXAMPLE" \
-e "MINIO_ROOT_PASSWORD=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
quay.io/minio/minio server /data --console-address ":9001"