离线redflag(asianux4.5)内网环境docker 安装 操作
一、linux版本
单位服务器是asianux4.5
查了内核,linux2.6的,基本上是基于redhat6的。
redhat收费,centos是redhat相似的发行版,免费,都是通过yum管理程序包。
而且,redhat和centos的版本基本对应,也就是redhat6=centos6, redhat7=centos7
asianux4.5和centos6.x , redhat6.x相似。
二、docker版本。
docker-io是docker早期版本, 对应redhat6.5以上,内核2.6以上
docker升级后,分化出docker-ce(免费)docker-ee(收费)版本。
ce\ee版本都要求centos7或redhat7以上,内核版本3.10以上,目前的内核都4.x了,想想单位的机器可真老。
三、在开发机(可上网的ubuntu)上,做好程序运行环境,保存镜像,导出镜像
开发机16.04 ubuntu, 内核4.15
lxg@lxg-opt:~$ uname -a Linux lxg-opt 4.15.0-99-generic #100~16.04.1-Ubuntu SMP Wed Apr 22 23:56:30 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux lxg@lxg-opt:~$
找个模板https://hub.docker.com/r/frolvlad/alpine-python3/
1.拉取:docker pull frolvlad/alpine-python3
2.运行:docker run -it --rm frolvlad/alpine-python3 sh
注意:alpine没安装/bin/bash,而是用sh
3.修改,定制,部署应用:省略。。。
4.把当前container保存成另一个image: docker commit frolvlad/alpine-python3 my_alpine_py
注意:commit时候,需要另起一个shell,不能退出当前container的运行,否则你的定制内容保存不了,下一次在run image时候定制全丢失。
5.查看image保存结果,
my_alpine_py是你定制生成的image
lxg@lxg-opt:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE my_alpine_py latest a21502aa20ce 4 hours ago 56.8MB frolvlad/alpine-python3 latest dd1e5224fc24 7 weeks ago 56.8MB
6.导出image,拷贝到生产机服务器
lxg@lxg-opt:~$ docker save -o my_alpine_py my_alpine_py.tar
这样,把my_alpine_py镜像,保存成当前目录下的my_alpine_py.tar文件。拷贝过程省略
四、asianux4.5(centos6.x)上离线安装docker-io
参考:
https://www.cnblogs.com/hdulzt/p/7834312.html
https://www.jianshu.com/p/4da882bd9d8c
相关安装包下载后放自己云盘上了
按顺序安装
1# rpm -ivh lxc-libs-1.0.9-1.el6.x86_64.rpm 2# rpm -ivh lua-alt-getopt-0.7.0-1.el6.noarch.rpm 3# rpm -ivh lua-filesystem-1.4.2-1.el6.x86_64.rpm 4# rpm -ivh lua-lxc-1.0.9-1.el6.x86_64.rpm 5# rpm -ivh lxc-1.0.9-1.el6.x86_64.rpm
#安装libcgroup
6# rpm -ivh libcgroup-0.40.rc1-26.el6.x86_64.rpm
能查到,就不用安装 https://www.jianshu.com/p/beea3ae215e6
7# 挂载:(因为安装cgroup后需要挂载进系统)
i. 编辑 : 使用vi / vim命令编辑/etc/fstab文件
ii. 在文件最后添加一行,并且格式与原格式相同 !!!
1) none /sys/fs/cgroup cgroup defaults 0 0
#8.重启,挂载需要重启centos
i. shutdown -r now
(-r表示关机后重启)
#9安装docker
# rpm -ivh docker-io-1.7.1-2.el6.x86_64.rpm
注意,不安装libcgroup,直接安装docker会报错:“docker-io libcgroup is needed for docker-io”
以上 9步骤,成功在单位的asianux4.5上安装docker成功,至于其他博文说的,需要device-mappe等,没用上,估计环境里有。
五、生产机上装载image,确认
docker load --input my_alpine_py
[root@localhost emic]# docker load --input my_alpine_py
[root@localhost emic]# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE my_alpine_py latest ec940855496b 4 hours ago 56.77 MB [root@localhost emic]#
image已经装载了,下面运行image的容器
[root@localhost emic]# docker run -it my_alpine_py sh / # ls 00work dev home media opt root sbin sys usr bin etc lib mnt proc run srv tmp var / #
运行起来了,定制的目录信息也在。