註意:非root用戶必須要有sudo許可權 一、安裝前的準備 1.查看當前主機是否有docker組 若沒有輸出結果則新建 再次查看,發現已經有了docker組 2.新增擁有sudo許可權的用戶(若知道root和其他擁有sudo許可權的系統用戶密碼,跳到3;若都沒有,必做) 修改該用戶的密碼 為新增的用戶添 ...
註意:非root用戶必須要有sudo許可權
一、安裝前的準備
1.查看當前主機是否有docker組
若沒有輸出結果則新建
再次查看,發現已經有了docker組
2.新增擁有sudo許可權的用戶(若知道root和其他擁有sudo許可權的系統用戶密碼,跳到3;若都沒有,必做)
修改該用戶的密碼
為新增的用戶添加sudo許可權
sudo vi /etc/sudoers
在92行下一行添加
test ALL=(ALL) ALL
3.把當前用戶加入到docker組 (此時用戶並沒有加入進docker組)
切換至sudo許可權用戶,然後再切換回當前用戶(此時可以看到用戶已經加入docker組)
3.刪除新增的用戶和它的sudo許可權(第2步沒做請忽略此步)
sudo vi /etc/sudoers 在92行下一行添加 test ALL=(ALL) ALL
兩次退出,不然刪除用戶時會報錯
二、安裝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
三、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