到这里docker系列教程已经是第六期了,今天小千来给大家介绍一下docker镜像的创建方法,还是老规矩喜欢的话记得收藏起来。
创建镜像
当我们从 docker 镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。
1、从已经创建的容器中更新镜像,并且提交这个镜像
2、使用 Dockerfile 指令来创建一个新的镜像
创建Docker账号
共享和发布镜像时构建镜像中重要的环节,可以将镜像推送到Docker Hub或资金的私有Registry中。
这条命令会完成登录,并将认证信息报错起来供后面使用。个人认证信息将报错到$HOME/ .dockercfg文件中.
用 commit 命令创建镜像
可以想象是往版本控制系统里提交变更:首先创建一个容器,并在容器里做修改,就行修改代码一样,最后在讲修改提交为一个新镜像。
创建一个新容器命令:
sudo docker run -i -t ubuntu /bin/bash
或者之前创建好的myubuntu容器:
sudo docker start myubuntu
sudo docker attach myubuntu
注意:
docker run 后面指定的是一个镜像、而docker start指定的是一个容器、docker run是利用镜像生成容器,并启动容器,而docker start是启动一个之前生成过的容器
因为ubuntu官方镜像中没有软件包的缓存文件,使用apt-get update更新即可,也可以修改源来配置。进入myubuntu之后,然后安装ssh。
运行ssh需要目录/var/run/sshd存在,创建启动服务
mkdir -p /var/run/sshd/usr/sbin/sshd -D &
然后可以看到已经运行,netstat命令可能也没有,安装即可apt-get install net-tools
然后复制需要登录的公钥信息(这里为本地主机)。使用ssh-keygen可以生成。
复制id_rsa.pub的内容到容器中的/root/.ssh/authorized_keys
创建ssh服务执行文件,然后退出容器
vim /run.sh
chmod +x run.sh
使用docker commit保存修改的容器,然后运行
docker commit CONTAINER ID ssh:ubuntu
docker run -d -p :22 ssh:ubuntu /run.sh
最后可以在宿主机上通过随机生成的32768端口来访问登录容器了:
使用dockerfile创建镜像
创建一个目录sshd_ubuntu,分别创建文件如下:
以上就是docker框架的镜像创建方法了,下一期我们继续介绍dockerfile的创建方法。想了解Python哪方面的技术,欢迎在评论中留言。
本文来自千锋教育,转载请注明出处。