docker配置普通用户访问的三种方法

 更新时间:2024年11月10日 15:50:33   作者:computer_vision_chen  
本文主要介绍了docker配置普通用户访问的三种方法,让普通用户在Ubuntu系统上无需使用sudo权限即可使用Docker,每种方法都详细说明了具体步骤,并附带了相关命令,感兴趣的可以了解一下

🌕方法一:让所有用户都可以使用docker

🌙创建docker用户组

sudo groupadd docker

🌙把当前用户加入docker用户组

sudo usermod -aG docker $USER

🌙单独把某个用户加入docker用户组

sudo usermod -aG docker 用户名

🌙更新激活docker用户组

newgrp docker

🌙验证不需要sudo执行docker命令

docker run hello-world

🌙如果执行上面的命令之后不行,则重启Docker服务:

在某些情况下,你可能需要重启Docker服务以使更改生效。你可以使用以下命令:

sudo systemctl restart docker

检查组成员:你可以使用以下命令检查哪些用户属于docker组:

getent group docker

🌕方法二:让所有用户都可以使用docker(需要重启)

🌙添加所有用户为docker的用户

sudo usermod -aG docker $USER
reboot

🌙重启docker服务

systemctl start docker
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
service docker restart

🌙测试普通用户能不能使用docker

docker run hello-world

🌙为什么要sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common

sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common 这个命令并不是直接让普通用户使用 Docker 的必需步骤。然而,这个命令中的某些软件包可能对设置或管理 Docker 环境有所帮助,具体取决于您的目标和系统配置。

让我们逐一看看这些软件包的作用:

apt-transport-https:这个软件包允许 apt(APT 包管理工具)通过 HTTPS 协议下载软件包。这对于从使用 HTTPS 的软件仓库(repository)安装软件包是必要的。如果您的 Docker 安装源或任何 Docker 相关的软件仓库是通过 HTTPS 提供的,那么安装 apt-transport-https 是有必要的。

ca-certificates:这个软件包包含了 Mozilla 的 CA(证书颁发机构)证书捆绑包,用于验证 SSL/TLS 证书的合法性。这对于确保通过 HTTPS 的安全通信至关重要。

curl:curl 是一个命令行工具,用于从服务器传输数据。它支持多种协议,包括 HTTP、HTTPS、FTP 等。虽然 Docker 本身不需要 curl 来运行,但 curl 在管理和配置 Docker(例如,从远程服务器下载 Docker 配置文件或脚本)时可能非常有用。

software-properties-common:这个软件包提供了 add-apt-repository 命令,该命令允许用户添加新的 APT 软件仓库。虽然这通常用于添加第三方软件仓库,但它与 Docker 的直接关系不大。然而,如果您打算添加 Docker 的官方仓库或任何第三方 Docker 仓库,那么安装 software-properties-common 将是有用的。

🌕方法三:文心的方法

在Ubuntu上,默认情况下,Docker守护进程(daemon)以root用户身份运行,并且只有root用户或具有sudo权限的用户才能直接运行Docker命令。然而,你可以通过以下步骤将Docker权限授予普通用户,而无需每次都使用sudo。

🌙步骤1:创建docker用户组

Docker安装过程中通常会创建一个名为docker的用户组。如果组不存在,你可以手动创建:

sudo groupadd docker

🌙步骤2:将用户添加到docker组

将你的普通用户添加到docker组中。假设你的用户名是your_username,你可以使用以下命令:

单独指定一个人使用docker

sudo usermod -aG docker your_username

指定所有用户都可以使用docker

sudo usermod -aG docker $USER

🌙步骤3:重新登录

为了使组成员身份生效,你需要重新登录。你可以注销并重新登录,或者重新启动系统。如果你不想重新登录,可以使用newgrp命令临时切换到新的组:

newgrp docker

🌙步骤4:验证权限

重新登录后,你可以验证是否成功获得了Docker权限。运行以下命令,无需使用sudo:

docker run hello-world

如果一切正常,你应该会看到Docker的Hello World消息,这表明你现在可以无需sudo权限运行Docker命令。

🌙重启Docker服务:

在某些情况下,你可能需要重启Docker服务以使更改生效。你可以使用以下命令:

sudo systemctl restart docker

检查组成员:你可以使用以下命令检查哪些用户属于docker组:

getent group docker

通过这些步骤,你可以让普通用户无需sudo权限即可访问和运行Docker命令。

到此这篇关于docker配置普通用户访问的三种方法的文章就介绍到这了,更多相关docker配置普通用户访问内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • WIN10系统和Docker内部容器IP互通方式

    WIN10系统和Docker内部容器IP互通方式

    这篇文章主要介绍了WIN10系统和Docker内部容器IP互通方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Docker compose一键安装mirai搭建QQ机器人最快操作方法

    Docker compose一键安装mirai搭建QQ机器人最快操作方法

    这篇文章主要介绍了Docker compose一键安装mirai,搭建QQ机器人最快方法,详细介绍了mirai基本操作,结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • 清理Docker废弃镜像与缓存详细图文教程

    清理Docker废弃镜像与缓存详细图文教程

    在使用Docker进行开发和部署过程中,我们可能会遇到需要删除旧镜像和容器以释放磁盘空间或清除不再需要的缓存的情况,这篇文章主要给大家介绍了关于清理Docker废弃镜像与缓存的相关资料,需要的朋友可以参考下
    2024-07-07
  • docker环境搭建JMeter+Grafana+influxdb可视化性能监控平台的教程

    docker环境搭建JMeter+Grafana+influxdb可视化性能监控平台的教程

    这篇文章主要介绍了docker下搭建JMeter+Grafana+influxdb可视化性能监控平台,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07
  • win10+Docker Toolbox+mysql教程

    win10+Docker Toolbox+mysql教程

    这篇文章主要介绍了win10+Docker Toolbox+mysql教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Docker部署SpringBoot应用的实现步骤

    Docker部署SpringBoot应用的实现步骤

    本文主要介绍了Docker部署SpringBoot应用,Docker可以巧妙的解决函数库、依赖冲突问题,具有一定的参考价值,感兴趣的可以了解一下
    2021-11-11
  • docker 实现容器与宿主机无缝调用shell命令

    docker 实现容器与宿主机无缝调用shell命令

    这篇文章主要介绍了docker 实现容器与宿主机无缝调用shell命令的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随想过来看看吧
    2021-03-03
  • 虚拟机如何安装指定版本的Docker举例详解

    虚拟机如何安装指定版本的Docker举例详解

    这篇文章主要介绍了虚拟机如何安装指定版本的Docker的相关资料,包括配置yum源、查看可用版本、安装指定版本、卸载旧版本、解决冲突、再次安装以及最后验证安装,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2024-12-12
  • docker自定义镜像构建php7的方法

    docker自定义镜像构建php7的方法

    这篇文章主要介绍了docker自定义镜像构建php7的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • Docker网络IP地址冲突的解决方法

    Docker网络IP地址冲突的解决方法

    本文主要介绍了Docker网络IP地址冲突的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06

最新评论