Ubuntu離線安裝docker以及docker-compose

一、基礎組件

docker鏈接: https://pan.baidu.com/s/1A5xVkus8ZNT5hXfVZ5yCcQ 提取碼: rk7b

docker-compose鏈接: https://pan.baidu.com/s/1fdqk-CmEp4twA0vvlSjF7A 提取碼: ruk9

二、docker安裝

# 創建基礎路徑 將docker-18.06.1-ce.tgz文件放置到此目錄下
mkdir ~/docker
cd ~/docker

# 解壓docker文件
tar -xvf docker-18.06.1-ce.tgz

# 將解壓出來的docker目錄下的文件移動到/usr/bin/目錄下
cp ~/docker/* /usr/bin/

# 編寫docker服務文件docker.service,將docker註冊爲系統service服務
vim /etc/systemd/system/docker.service

# 添加docker文件權限並啓動docker
chmod +x /etc/systemd/system/docker.service

systemctl daemon-reload
systemctl start docker          #啓動Docker
systemctl enable docker.service #設置開機自啓

# 驗證docker是否安裝成功
systemctl status docker #查看Docker狀態
docker -v               #查看Docker版本
#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
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
 
[Install]
WantedBy=multi-user.target

三、docker-compose安裝

# 將docker-compose-Linux-x86_64文件放置到此目錄下
cd ~/docker

# 將docker-compose-Linux-x86_64文件拷貝到/usr/bin目錄或/usr/local/bin目錄
sudo cp docker-compose-Linux-x86_64 /usr/local/bin/docker-compose

# 賦予docker-compose文件權限
sudo chmod +x /usr/local/bin/docker-compose

# 驗證是否安裝成功
sudo docker-compose -v

四、常用docker-compose指令

# 查看當前啓動的容器
sudo docker-compose ps

# 啓動部分服務在後邊加服務名,不加表示啓動所有,-d 表示在後臺運行
sudo docker-compose up [nginx|php| ...] -d

# 停止和啓動類似
sudo docker-compose stop [nginx|php| ...]

# 停止並刪除相關的容器
sudo docker-compose down [nginx|php| ...]

# 刪除所有未運行的容器
sudo docker rm $(sudo docker ps -a -q)

# 刪除所有未運行的鏡像,-f 可以強制刪除
sudo docker rmi $(sudu docker images -q)

# 重新構建過清理無效數據(注意如果執行 docker images -a 會出現一些 none 的鏡像,這些是構建鏡像的中間層不佔用空間也不是垃圾數據,不用管,使用下面的命令就是清理無效數據)
sudo docker system prune

 

發佈了1 篇原創文章 · 獲贊 0 · 訪問量 1264
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章