我最近从Docker Desktop切换到colima,从那以后我一直无法启动neo4j容器。当我运行docker-compose时,我在docker日志中得到以下错误,导致neo4j崩溃:
> docker logs neo4j
Changed password for user 'neo4j'.
chown: /data/dbms/auth.ini: Permission denied
chown: /data/dbms: Permission denied
chown: /data/dbms: Permission denied
chown: /data: Permission denied
chown: /data: Permission denied
以前,相同的代码在Docker Desktop设置中工作得很好。有什么好主意吗?
我已经试过了:
- 已验证登录用户对上述日志中提到的相应文件和目录具有读/写权限。
- 尝试重新安装colima, docker和docker-compose.
- 这些工具的相关文件夹的交叉检查权限(/。科利马,/。码头工人等)
- 使用"sudo"无论适用
- 尝试删除日志中提到的/data/目录,以便它可以正确地重新生成
- 打开和关闭:P
我找到了一个解决方案,我在这里写这篇文章是为了将来其他可能遇到同样问题的用户参考。问题的核心在于绑定挂载的卷。以前,docker桌面有更高的特权/权限,但现在转移到colima后,相同的特权不再存在。
用户权限没有正确地传递给容器,导致它们无法访问主机上的绑定卷。解决方案是在docker运行命令或docker-compose文件等中添加user:group
或uid:gid
映射。
user: "<uid>:<gid>"
在docker-compose文件中,它看起来像这样:
version: '3.4'
services:
neo4j:
image: neo4j:3.5.5
container_name: neo4j
ports:
- 7474:7474
- 7687:7687
volumes:
- ./example/docker/neo4j/conf:/conf
- ./.local/neo4j/data:/var/lib/neo4j/data
user: '1000'
group_add:
- '1000'
要了解更多信息,请参阅以下文档/线程:
- https://docs.docker.com/engine/reference/run/用户
- https://docs.docker.com/storage/volumes/
- https://github.com/abiosoft/colima/issues/54
如果您没有使用docker-compose,我的答案可能会有所帮助。
我最近从Docker Desktop切换到Calima,遇到了先前正常运行的MySQL容器卷中的文件"permission denied"错误。但是,我还是解决了这个问题。
错误:
chown: changing ownership of '/var/lib/mysql/private_key.pem': Permission denied
chown: changing ownership of '/var/lib/mysql/ca-key.pem': Permission denied
chown: changing ownership of '/var/lib/mysql/ibdata1': Permission denied
chown: changing ownership of '/var/lib/mysql/#innodb_temp': Permission denied
chown: changing ownership of '/var/lib/mysql/#innodb_temp/temp_3.ibt': Permission denied
chown: changing ownership of '/var/lib/mysql/#innodb_temp/temp_2.ibt': Permission denied
chown: changing ownership of '/var/lib/mysql/#innodb_temp/temp_1.ibt': Permission denied
修复是添加--user 1000:1000
docker run --rm --name my-db-name
-e MYSQL_ROOT_PASSWORD=1234
-p 3306:3306
--user 1000:1000
-v $PWD/mysql-data:/var/lib/mysql
--platform linux/x86_64
mysql:8.0