centos下docker离线部署

安装准备

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

下载地址:

依赖组件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

下载地址:

安装步骤

在安装包下载目录打开命令行,使用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

猜你喜欢

转载自www.cnblogs.com/wangkai333/p/11832925.html