linux centos7 非root用戶安裝源碼版docker

注意:非root用戶必需要有sudo權限linux

1、安裝前的準備docker

1.查看當前主機是否有docker組json

若沒有輸出結果則新建bash

再次查看,發現已經有了docker組spa

2.新增擁有sudo權限的用戶(若知道root和其餘擁有sudo權限的系統用戶密碼,跳到3;若都沒有,必作)3d

修改該用戶的密碼rest

爲新增的用戶添加sudo權限code

sudo vi /etc/sudoers
  在92行下一行添加
  test      ALL=(ALL)      ALL

 

3.把當前用戶加入到docker組 (此時用戶並無加入進docker組)blog

切換至sudo權限用戶,而後再切換回當前用戶(此時能夠看到用戶已經加入docker組ip

3.刪除新增的用戶和它的sudo權限(第2步沒作請忽略此步)

sudo vi /etc/sudoers
  在92行下一行添加
  test  ALL=(ALL)	ALL

兩次退出,否則刪除用戶時會報錯

2、安裝docker

1.下載docker源碼包並上傳至虛擬機

https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/docker-18.09.0.tgz

2.解壓源碼包至指定目錄下

3.將解壓出來的docker目錄下的指令複製到 /usr/bin/ 目錄下

sudo cp docker/* /usr/bin/ 

 

4./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

 

5.查看一下是否改變所屬用戶和所屬組(獲得和解壓出來的docker目錄下的同樣的8個指令)

6.將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 LimitCORE=infinity TimeoutStartSec=0 Delegate=yes KillMode=process Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target

 

7.添加執行權限並從新加載配置文件

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

8.docker鏡像加速(能夠不作,可是docker pull會很慢,因爲docker官網在海外)

新建該文件
sudo vi /etc/docker/daemon.json
加入如下內容
{
"registry-mirrors": ["http://hub-mirror.c.163.com"] }

9.啓動docker

sudo systemctl start docker

3、docker基礎命令

docker啓/停/重啓/查看狀態sudo systemctl  start/stop/restart/status查看docker已有鏡像docker images在docker官網搜尋指定鏡像docker search 鏡像下載鏡像(不加標籤默認下載最新版本的鏡像)docker pull 鏡像名字:tag(即標籤)啓動容器(以xxx名字運行基於鏡像的容器,並映射容器端口到本機端口,容器目錄文件儲存在本機目錄)docker run -d -name xxx -p 本機端口:容器端口 -v 本機目錄:容器目錄 鏡像name:tag(或ID)進入正在運行的容器內部docker exec -it 容器name(或ID) /bin/bash容器的啓/停/重啓/信息/刪除docker start/stop/restart/inspect/rm 容器name(或ID)查看正在運行的容器docker ps查看全部容器(包括正在運行的、中止的,不包括刪除的)docker ps -a鏡像的刪除(刪除鏡像前請刪除全部與該鏡像有關的容器)docker rmi 鏡像name:tag(或ID)查看當前安裝的docker有關信息docker info 
相關文章
相關標籤/搜索