如何开始docker - docker基础镜像制作
基础镜像
信不过公共镜像站里面的镜像?那就自己动手制作基础镜像吧。
创建基础系统
docker 镜像就是一个 root 文件系统,因此,找到一个完整的系统进行打包就可以了。
1、虚拟机安装最小化系统
CentOS 有最小化安装的 iso 镜像,利用虚拟机最小化安装系统。
2、打包系统
安装完后,进入系统就可以开始打包。直接使用 tar 命令进行打包就可以了,支持的包格式:.tar .tar.gz .tgz .bzip .tar.xz .txz,一般使用 tar 就可以了,打包的速度比较快,而且最小化安装包也不会很大,不需要进行压缩。
tar --numeric-owner --exclude=/proc --exclude=/sys -cvf /root/centos7-base.tar /
3、将打包的系统导入 docker 构建镜像
cat centos7-base.tar | docker import - centos7:v1.0
4、测试镜像
docker run -it --rm centos7:v1.0 cat /etc/system-release
5、其他导入方式
docker import centos7-base.tar centos7:v1.1
6、远程导入
docker import http://192.168.57.102/centos7-base.tar centos7:v1.1
利用 commit 创建镜像
Docker 提供了一个 docker commit 命令,可以将容器的存储层保存下来成为镜像。换句话说,就是在原有镜像的基础上,再叠加上容器的存储层,并构成新的镜像。以后我们运行这个新镜像的时候,就会拥有原有容器最后的文件变化。
docker commit [选项] <容器ID或容器名> [<仓库名>[:<标签>]]
例如
docker commit d77ccec0b867 myimages:v0.1
docker images 就可以看到myimages:v0.1这个镜像的生成。
但是这种方法不推荐使用,因为容器在运行过程中,有执行很多命令和文件的修改,如果直接使用容器提交成镜像就会导致镜像变得很臃肿。
如果需要定制镜像,最好的方法就是使用 DockerFile 生成镜像,这也是一般制作镜像的方法。
- 原文作者:Linux运维菜
- 原文链接:https://www.opcai.top/post/2019/2019-02/docker4/
- 版权声明:本作品采用进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。