非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

exit
su qwtest
groups

在这里插入图片描述

7.解压

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

cd /home/qwtest/
ll
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

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Ubuntu 22.04 中,如果你不想使用 root 用户安装 Docker,可以按照以下步骤进行: 1. 在另一台联网的机器上,下载 Docker 的 deb 包和依赖包。可以从 Docker 的官方网站下载对应版本的 deb 包和依赖包,也可以使用 wget 命令下载。 例如,如果要安装 Docker 20.10.8 版本,可以使用以下命令下载对应的 deb 包和依赖包: ``` mkdir docker cd docker wget https://download.docker.com/linux/ubuntu/dists/hirsute/pool/stable/amd64/containerd.io_1.4.9-1_amd64.deb wget https://download.docker.com/linux/ubuntu/dists/hirsute/pool/stable/amd64/docker-ce-cli_20.10.8~3-0~ubuntu-hirsute_amd64.deb wget https://download.docker.com/linux/ubuntu/dists/hirsute/pool/stable/amd64/docker-ce-rootless-extras_20.10.8~3-0~ubuntu-hirsute_amd64.deb wget https://download.docker.com/linux/ubuntu/dists/hirsute/pool/stable/amd64/docker-ce_20.10.8~3-0~ubuntu-hirsute_amd64.deb ``` 2. 将下载的 deb 包和依赖包复制到目标机器上。 可以使用 scp 命令将文件复制到目标机器上,例如: ``` scp *.deb user@remote:/path/to/folder ``` 其中,user 是目标机器上的用户名,remote 是目标机器的 IP 地址或域名,/path/to/folder 是目标机器上的文件夹路径。 3. 在目标机器上安装依赖包。 使用以下命令安装依赖包: ``` sudo dpkg -i containerd.io_1.4.9-1_amd64.deb docker-ce-cli_20.10.8~3-0~ubuntu-hirsute_amd64.deb docker-ce-rootless-extras_20.10.8~3-0~ubuntu-hirsute_amd64.deb docker-ce_20.10.8~3-0~ubuntu-hirsute_amd64.deb ``` 如果出现依赖关系错误,可以使用以下命令修复: ``` sudo apt-get install -f ``` 4. 将 root 用户添加到 docker 用户组中。 使用以下命令将当前用户添加到 docker 用户组中: ``` sudo usermod -aG docker $USER ``` 其中,$USER 是当前用户名。 5. 重新登录或重启系统。 为了让用户组变化生效,需要重新登录或重启系统。 6. 验证 Docker 是否安装成功。 使用以下命令验证 Docker 是否安装成功: ``` docker run hello-world ``` 如果输出以下信息,说明 Docker 安装成功: ``` Hello from Docker! This message shows that your installation appears to be working correctly. ... ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值