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


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

一、安裝前的准備

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

若沒有輸出結果則新建

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

 

2.把需要使用docker指令的用戶加入到docker組,此時用戶並沒有加入進docker組

退出當前用戶,重新登錄,此時可以看到用戶已經加入docke

 

二、安裝docker

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

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

 

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

 

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

sudo chown root:docker docker/*
sudo mv docker/* /usr/bin/

   

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

 

5.將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

 

6.添加執行權限並重新加載配置文件

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

 

7.docker鏡像加速和基本配置(可以不做,但是docker pull會很慢,由於docker官網在海外)

sudo mkdir /etc/docker

sudo vi /etc/docker/daemon.json

加入以下內容
{
#docker數據目錄
"data-root":"/app/docker",
#docker存儲的類型
"storage-driver":"overlay2",
#docker日志記錄級別
"log-level":"INFO",
#docker日志驅動程序
"log-driver":"json-file",
#dockr驅動程序選項
"log-opts": { "max-size": "10m", "max-file":"5" },
#docker加速
"registry-mirrors":["http://hub-mirror.c.163.com"] }

 

8.啟動docker

sudo systemctl start docker

 

 

三、docker基礎命令

1、其他指令
docker啟/停/重啟/查看狀態
sudo systemctl start/stop/restart/status
查看當前安裝的docker有關信息
docker info

2、鏡像相關指令

查看已有鏡像
docker images

在docker官網搜尋指定鏡像
docker search 鏡像

下載鏡像(不加標簽默認下載最新版本的鏡像)
docker pull 鏡像名字:tag(即標簽)

保存已有鏡像
docker save -o name.tar 鏡像name:tag

加載鏡像
docker load -i name.tar

鏡像的刪除(刪除鏡像前請刪除所有與該鏡像有關的容器)
docker rmi 鏡像ID(或name:tag)

修改鏡像name和tag
docker tag 鏡像name 新鏡像name:新tag

3、容器相關指令

啟動容器(-d:后台運行;--name:指定容器名字;-p:映射容器端口到本機端口;-v:容器目錄文件掛載至本機目錄)
docker run -d --name 自定義容器name -p 本機端口:容器端口 -v 本機目錄:容器目錄 鏡像ID(或name:tag)

進入正在運行的容器內部(-i:以交互模式運行容器;-t:為容器重新分配一個偽輸入終端.通常it一起使用)
docker exec -it 容器name(或ID) /bin/bash

容器的啟/停/重啟/刪除
docker start/stop/restart/rm 容器name(或ID)

查看容器端口映射
docker port 容器name(或ID)

查看容器信息
docker inspect 容器name(或ID)

查看正在運行的容器
docker ps

查看所有容器(包括正在運行的、停止的,不包括刪除的)
docker ps -a

查看容器內的進程
docker top 容器name(或ID)

監控並顯示最新100行的容器日志(可以直接使用docker logs容器name(或ID),但是日志容量大的最好加上條件)
docker logs -f --tail=100 容器name(或ID)



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM