非root用户离线安装docker


本文所有操作在CentOS7.3版本下进行。

1.创建非root用户

#添加qwtest
adduser qwtest

2.设置普通用户密码

#添加qwtest
passwd qwtest

3.给普通用户添加sudo权限

sudoers
whereis sudoers
ls -l /etc/sudoers
chmod -v u+w /etc/sudoers

在这里插入图片描述
编辑/etc/sudoers,给新用户添加sudo权限
在这里插入图片描述
编辑完保存退出,并将编辑权限收回。

chmod -v u-w /etc/sudoers

4.切换到非root用户,创建docker组

su qwtest
sudo groupadd docker

5.把当前用户加入到docker组

sudo gpasswd -a qwtest docker

6.切换到root,再进入qwtest

su qwtest groups

将docker安装包上传到/home/qwtest下,并进行解压

cd /home/qwtest/
sudo tar -xvf docker-19.03.9.tgz

8.将解压出来的docker目录下的指令复制到 /usr/bin/ 目录下

sudo cp docker/* /usr/bin/

9./usr/bin/目录下docker有关指令的所属用户和所属组(必做,不然非root用户使用docker指令报错:权限不够)

sudo chown root:docker /usr/bin/docker*
sudo chown root:docker /usr/bin/containerd*
sudo chown root:docker /usr/bin/runc
sudo chown root:docker /usr/bin/ctr

10.查看一下是否改变所属用户和所属组(得到和解压出来的docker目录下的一样的8个指令)

ll /usr/bin/|grep docker

11.将docker注册为service服务

#新建文件
sudo vi /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

12.添加执行权限并重新加载配置文件

sudo chmod a+x /etc/systemd/system/docker.service
sudo systemctl daemon-reload

13.启动docker

sudo systemctl start docker
#查看docker版本
docker -v
#查看当前启动容器
docker ps
#查看当前镜像
docker images

14.验证

将打包好的hello-world镜像上传到/home/qwtest下进行加载并启动测试

#加载镜像
docker load <  hello.tar
#查看当前镜像
docker images
#启动镜像
docker run -it --name hello_test hello:1.0

在这里插入图片描述
参考博文:https://blog.csdn.net/weixin_30366015/article/details/116582337

注意:root用户必须要有sudo权限一、安装前的准备1.查看当前主机是否有docker组若没有输出结果则新建再次查看,发现已经有了docker组2.新增拥有sudo权限的用户(若知道root和其他拥有sudo权限的系统用户密码,跳到3;若都没有,必做)修改该用户的密码为新增的用户添加sudo权限sudo vi /etc/sudoers在92行下一行添加test   ALL=(ALL) ... 这篇文章用于介绍使用root用户操作docker。根据企业的安全策略,有一些情况下无法获取root用户的直接使用方式,通过docker或者sudo的方式使用docker变成了这种情况下的选择之一。 坚果云 https://www.jianguoyun.com/p/DZ_CgMIQ7OLwBxi_rI4D (访问密码 : ehwgc7) 首先从 https://download.docker.com/linux/centos/ 下载对应版本的安装包 这里我选 stable x86_64,url为 https://download.docker.com/linux/c... 离线通过rpm方式安装docker-ce 通过RPM方式安装docker-ce,适合于不能联网更新。比较麻烦的是需要下载各种依赖。 首先在https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ 下载最新版的 containerd.io docker-ce docker-ce-cli docker-ce-selinux 我下载的是: containerd.io-1.2.6-3.3.el7.x86_64.rpm docker-ce-1 3&period;3 js函数1.函数语法: 函数声明的方式:function 函数名(参数1,参数2-){//函数体;}函数调用:函数名(参数1,参数2-); 函数内不一定都指定返回值. 如果需要指定返回值,可用 return ...C&num;使用Xamarin开发可移植移动应用&lpar;2&period;Xamarin&period;Forms布局... 方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉 Allows people in group wheel to run all commands %wheel ALL=(ALL) ALL 然后修改用户,使其属于root组(wheel),命令如下: #usermod -