docker容器中创建非root用户的操作方法

 更新时间:2025年06月16日 11:37:44   作者:veryitman  
用户分享在Docker容器中创建非root用户nuser并配置权限的实践,通过设置密码、修改sudoers文件实现安全运行,避免使用root用户操作,适用于部署Stable Diffusion WebUI等场景,本文给大家介绍docker容器中创建非root用户的操作,感兴趣的朋友一起看看吧

简介

docker 也有一段时间了,一直在 docker 容器中使用 root 用户肆意操作。直到部署 stable diffusion webui 我才发现无法使用 root 用户运行它,于是才幡然醒悟:是时候搞个非 root 用户了。

我使用的 docker 镜像文件是 centos:centos7.9.2009,使用如下命令就可以拉取其镜像文件。

docker pull centos:centos7.9.2009

接下来的内容都是基于该镜像进行操作的,仅供大家参考。

厉兵秣马

我们还是要做些准备工作。

1、创建/运行容器

docker run -d -it --name c_os centos:centos7.9.2009
docker container start c_os

2、进入容器(此时用的是 root 用户,docker默认如此)

docker exec -it c_os bash

3、安装相关工具

yum install -y vim
yum install -y sudo

万事俱备

做完上面的工作,我们就可以来操刀了。

跟着命令敲,都是基本操作。

# 添加 nuser 这个用户
useradd -d /home/nuser -m nuser
# 设置密码
passwd nuser

需要为该用户 nuser 设置一个密码,比如 565656。

usermod -aG wheel nuser

编辑 /etc/sudoers 文件

chmod u+w /etc/sudoers
vim /etc/sudoers

修改两个地方

## Allows people in group wheel to run all commands  
# 取消这个注释
wheel   ALL=(ALL)       ALL 
# 新增
nuser    ALL=(ALL)       ALL  

编辑完成之后,关闭文件的编辑权限。

chmod u-w /etc/sudoers

我们退出刚才进入的容器

exit

指定用户 nuser 重新进入容器

docker exec --user nuser -it c_os bash

可以使用如下命令查看当前登入的用户是哪位

whoami

结果显示:nuser,搞定!

到此这篇关于docker容器中创建非root用户的文章就介绍到这了,更多相关docker创建非root用户内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker中部署Mino并挂载配置文件的项目实践

    Docker中部署Mino并挂载配置文件的项目实践

    本文主要介绍了Docker中部署Mino并挂载配置文件的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • Docker保存镜像和导入镜像文件完整图文教程

    Docker保存镜像和导入镜像文件完整图文教程

    这篇文章主要给大家介绍了关于Docker保存镜像和导入镜像文件的完整图文教程,适用于备份、迁移和版本控制等场景,文中通过代码及图文介绍的非常详细,需要的朋友可以参考下
    2024-12-12
  • docker容器无法访问外网,但宿主机却可以访问的解决方案

    docker容器无法访问外网,但宿主机却可以访问的解决方案

    本文详细介绍了Docker容器无法访问外网的常见原因及其解决方法,包括检查Docker服务状态、网络设置、宿主机网络连接、防火墙设置、重建docker0网络、开启IP转发功能、修改DNS设置以及使用--net=host模式等
    2024-11-11
  • docker 的volumes清理步骤

    docker 的volumes清理步骤

    文章介绍了如何在Docker中清理volumes以释放磁盘空间,包括查看所有卷、查找未使用的卷、清理未使用的卷、手动删除特定卷、检查卷的使用情况、清理卷中的数据、预防措施以及迁移Docker数据目录等步骤,感兴趣的朋友一起看看吧
    2025-03-03
  • 基于Docker安装与部署Zabbix

    基于Docker安装与部署Zabbix

    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。
    2018-04-04
  • Docker部署Java应用程序的实现步骤

    Docker部署Java应用程序的实现步骤

    本文主要介绍了Docker部署Java应用程序的实现步骤,通过将Java应用程序打包成一个Docker镜像,可以实现快速部署、资源隔离和灵活扩展,感兴趣的可以了解一下
    2024-03-03
  • docker 安装Oracle-12C的方法详解

    docker 安装Oracle-12C的方法详解

    这篇文章主要介绍了docker 安装Oracle-12C的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • MinIO在 Docker中修改登录账号和密码的步骤

    MinIO在 Docker中修改登录账号和密码的步骤

    本文介绍了如何在Docker容器中运行的MinIO修改登录账号和密码,包括备份数据、停止容器、删除旧容器、启动新容器并设置新的账号和密码以及验证修改结果的步骤,感兴趣的朋友一起
    2025-03-03
  • Docker 彻底删除私有库镜像的操作

    Docker 彻底删除私有库镜像的操作

    这篇文章主要介绍了Docker 彻底删除私有库镜像的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 使用Docker进行node开发时实现热加载功能

    使用Docker进行node开发时实现热加载功能

    这篇文章主要介绍了使用docker进行vue、react或者node开发时实现热加载功能,即宿主机文件修改之后实时刷新或者实时重启服务,文中通过代码示例介绍的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2024-09-09

最新评论