在使用群晖的命令行进行管理的时候,执行docker指令需要root账户或者账户具有sudo权限。如果希望非root账户也能直接执行docker指令,可以通过更改docker.sock的群组来实现。
administrators group
如果只希望具有管理员权限的用户能直接使用docker,则使用这个方法。
我目前在使用DSM 7.2版本,Docker也被Container Manager所替代,提供了容器编排的能力。
Docker服务监听套接字位于/var/run/docker.sock
,默认权限为root:root
。
一般群晖管理员都不会使用root账户,也不会使用系统内置的admin管理账户,而是创建一个新的账户,授权管理员权限,避免被爆破。这个用户则会属于administrators
群组(可通过sudo synogroup --enum
可列出所有群组),这是群晖默认的管理群组。
因此只需要将/var/run/docker.sock
群组更改为administrators
,即可让具有管理员权限的用户直接使用docker。
sudo chgrp administrators /var/run/docker.sock
docker group
如果希望一些不具备管理员权限的用户能够直接执行docker,则需要单独建立一个群组,用于权限的分配。
创建群组并分配用户:
sudo synogroup --add docker
sudo synogroup --memberadd docker <username1> <username2> ...
sudo synogroup --get docker
更改docker权限:
sudo chgrp docker /var/run/docker.sock
1 条评论
大哥按照你这个方法还是没有连接成功是需要重启什么吗