centos下docker離線部署
- 2019 年 11 月 11 日
- 筆記
安裝準備
Docker可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然後發布到任何流行的Linux機器上,也可以實現虛擬化。
環境要求
Centos
安裝包下載地址
安裝包下載以下三個包:
containerd.io-1.2.5-3.1.el7.x86_64.rpm docker-ce-cli-18.09.4-3.el7.x86_64.rpm docker-ce-18.09.4-3.el7.x86_64.rpm
下載地址:
https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/
依賴組件cgroup,下載以下四個依賴包:
libcgroup-0.41-8.el7.x86_64.rpm libcgroup-devel-0.41-8.el7.x86_64.rpm libcgroup-pam-0.41-8.el7.x86_64.rpm libcgroup-tools-0.41-8.el7.x86_64.rpm
下載地址:
http://mirrors.163.com/centos/7/os/x86_64/Packages/
安裝步驟
在安裝包下載目錄打開命令行,使用root許可權執行以下命令:
rpm -ivh libcgroup-* #安裝依賴包 rpm -ivh container-selinux-2.107-3.el7.noarch.rpm rpm -ivh containerd.io-1.2.5-3.1.el7.x86_64. rpm rpm -ivh docker-ce-cli-18.09.4-3.el7.x86_64. rpm rpm -ivh docker-ce-18.09.4-3.el7.x86_64. rpm
驗證安裝
啟動docker
systemctl daemon-reload && systemctl restart docker
設置開機啟動
systemctl enable docker.service
驗證docker
docker version
部署過程
IP設置
Docker創建自定義網路固定IP:
docker network create --subnet 192.168.100.1/24 mynetwork
鏡像和容器部署
鏡像保存:
docker commit -p e191af92f0e appserver:1.0 docker save > appserver.tar
鏡像載入:
docker load < appserver.tar docker tag c463d appserver:1.0
啟動容器:
docker run -itd --privileged=true --restart=always -p 2222:22 --name=YiLiao -v /home/yiliao:/home/docker --network mynetwork --ip 192.168.100.2 appserver:1.0 /usr/sbin/init
容器內部部署
進入容器
docker exec -it 容器id /bin/bash
ssh服務
查看ssh服務是否開啟:
ps -e | grep ssh
若沒有開啟,使用以下命令開啟:
Ubuntu: service ssh start Centos: systemctl start sshd
容器編碼問題
暫時修改:
Ubuntu: export LANG=C.UTF-8 Centos: export LC_ALL=zh_CN.utf8
永久修改:
在Dockerfile中添加一行ENV LANG C.UTF-8
啟動演算法服務
nohup python mange.py runserver 8001 & nohup python server.py &
卸載步驟
rpm -e containerd.io-1.2.5-3.1.el7.x86_64. rpm rpm -e docker-ce-cli-18.09.4-3.el7.x86_64. rpm rpm -e docker-ce-18.09.4-3.el7.x86_64. rpm