linux非root用户搭建docker,Linux CentOS 7 非root用户安装源码版Docker
Linux 版本:CentOS 7
注意:非root用戶必須要有sudo權(quán)限
一、安裝前的準(zhǔn)備
1.查看當(dāng)前主機(jī)是否有docker組
若沒有輸出結(jié)果則新建
再次查看,發(fā)現(xiàn)已經(jīng)有了docker組
2.新增擁有sudo權(quán)限的用戶(若知道root和其他擁有sudo權(quán)限的系統(tǒng)用戶密碼,跳到3;若都沒有,必做)
修改該用戶的密碼
為新增的用戶添加sudo權(quán)限
sudo vi /etc/sudoers
在92行下一行添加
test ALL=(ALL) ALL
3.把當(dāng)前用戶加入到docker組 (此時(shí)用戶并沒有加入進(jìn)docker組)
切換至sudo權(quán)限用戶,然后再切換回當(dāng)前用戶(此時(shí)可以看到用戶已經(jīng)加入docker組)
3.刪除新增的用戶和它的sudo權(quán)限(第2步?jīng)]做請(qǐng)忽略此步)
sudo vi /etc/sudoers
在92行下一行添加
test ALL=(ALL)? ALL
兩次退出,不然刪除用戶時(shí)會(huì)報(bào)錯(cuò)
二、安裝docker
1.下載docker源碼包并上傳至虛擬機(jī)
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/docker-18.09.0.tgz
2.解壓源碼包至指定目錄下
3.將解壓出來的docker目錄下的指令復(fù)制到 /usr/bin/ 目錄下
sudo cp docker/* /usr/bin/
4./usr/bin/目錄下docker有關(guān)指令的所屬用戶和所屬組(必做,不然非root用戶使用docker指令報(bào)錯(cuò):權(quán)限不夠)
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
5.查看一下是否改變所屬用戶和所屬組(得到和解壓出來的docker目錄下的一樣的8個(gè)指令)
6.將docker注冊(cè)為service服務(wù)
新建該文件
sudo vi /etc/systemd/system/docker.service
加入以下內(nèi)容:
[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
LimitCORE=infinity
TimeoutStartSec=0Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
7.添加執(zhí)行權(quán)限并重新加載配置文件
sudo chmod a+x /etc/systemd/system/docker.service
sudo systemctl daemon-reloa
8.docker鏡像加速(可以不做,但是docker pull會(huì)很慢,由于docker官網(wǎng)在海外)
新建該文件
sudo vi /etc/docker/daemon.json
加入以下內(nèi)容
{"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
9.啟動(dòng)docker
sudo systemctl start docker
三、docker基礎(chǔ)命令
docker啟/停/重啟/查看狀態(tài)
sudo systemctl start/stop/restart/status
查看docker已有鏡像
docker images
在docker官網(wǎng)搜尋指定鏡像
docker search 鏡像
下載鏡像(不加標(biāo)簽?zāi)J(rèn)下載最新版本的鏡像)
docker pull 鏡像名字:tag(即標(biāo)簽)
啟動(dòng)容器(以xxx名字運(yùn)行基于鏡像的容器,并映射容器端口到本機(jī)端口,容器目錄文件儲(chǔ)存在本機(jī)目錄)
docker run -d -name xxx -p 本機(jī)端口:容器端口 -v 本機(jī)目錄:容器目錄 鏡像name:tag(或ID)
進(jìn)入正在運(yùn)行的容器內(nèi)部
docker exec -it 容器name(或ID) /bin/bash
容器的啟/停/重啟/信息/刪除
docker start/stop/restart/inspect/rm 容器name(或ID)
查看正在運(yùn)行的容器
docker ps
查看所有容器(包括正在運(yùn)行的、停止的,不包括刪除的)
docker ps -a
鏡像的刪除(刪除鏡像前請(qǐng)刪除所有與該鏡像有關(guān)的容器)
docker rmi 鏡像name:tag(或ID)
查看當(dāng)前安裝的docker有關(guān)信息
docker info
dd
總結(jié)
以上是生活随笔為你收集整理的linux非root用户搭建docker,Linux CentOS 7 非root用户安装源码版Docker的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php 二位数组随机,PHP多维数组 p
- 下一篇: linux 内核 发送数据,linux