镜像下载
- 搜索镜像
- docker search +镜像名字
#docker search centos
从Docker Hub中搜索符合条件的镜像
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223040227745.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNzI5MTQ4,size_16,color_FFFFFF,t_70)
[root@break du]# docker rm -f de25c2541b2deda1e2413855d7e88564ab6fb8936313e9ddae3a989aff009462 //删除容器
de25c2541b2deda1e2413855d7e88564ab6fb8936313e9ddae3a989aff009462
[root@break du]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223103352150.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNzI5MTQ4,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223103437764.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNzI5MTQ4,size_16,color_FFFFFF,t_70)
docker 镜像制作
- 1docker commit +ID/name
实例5:创建一个有apache的centos镜像
1使用docker commit +容器ID+新建的镜像名字
[root@break du]# docker run -it centos:latest /bin/bash
[root@4b92f408db31 /]# yum -y install httpd
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223104611317.png)
[root@break du]# docker commit 4b92f408db31 docker-centos:apache
![在这里插入图片描述](https://img-blog.csdnimg.cn/2018122311222237.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223112252631.png)
2使用Dockerfile来创建一个含有apache的镜像
- 创建工作目录
mkdir /docker-build
cd /docker-build
touch Docker-file
注意:make自动化编译时,需要Makefile文件,而自动化创建docker镜像时,需要Docker-file
- 编辑Dockerfile
FROM centos:latest
MAINTAINER <break@du.cn>
RUN yum -y install httpd
ADD start.sh /usr/local/bin/start.sh
ADD index.html /var/www/html/index.html
注释:
FROM centos:latest # FROM 基于哪个镜像
MAINTAINER break@du # MAINTAINER 镜像创建者
RUN yum -y install httpd #RUN 安装软件用
ADD start.sh /usr/local/bin/start.sh
ADD index.html /var/www/html/index.html
ADD 将文件src拷贝到新产生的镜像的文件系统对应的路径dest。所有拷贝到新镜像中的文件和文件夹权限为0755,uid和gid为0
- 创建start.sh和index.html
echo "/usr/sbin/httpd-DFOREGROUND" > start.sh
chmod a+x start.sh
echo "my test images" > index.html
- 使用build来创建image
docker build -t docker-centos:apacheruning ./
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223112823112.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNzI5MTQ4,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223114955179.png)
docker发布
方法:Save Image To TarBall
方法1:保存 Image 到 tar 包——将刚才做好的镜像打包。
语法:docker save -o 导出的镜像名.tar 本地镜像名:镜像标签
例如:
docker save -o docker-centos:running.tar docker-centos:apacheruning
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181223115058658.png)
docker load -i docker-centos:apacherunning.tar //导入本地镜像
docker优点
1.一些优势和VM一样,但不是所有都一样。
比VM小,比VM快,Docker容器的尺寸减小相比整个虚拟机大大简化了分布到云和从云分发时间和开销。Docker启动一个容器实例时间很短,一两秒就可以启动一个实例。
2.对于在笔记本电脑,数据中心的虚拟机,以及任何的云上,运行相同的没有变化的应用程序,IT的发布速度更快。
Docker是一个开放的平台,构建,发布和运行分布式应用程序。
Docker使应用程序能够快速从组件组装和避免开发和生产环境之间的摩擦。
3.您可以在部署在公司局域网或云或虚拟机上使用它。
4.开发人员并不关心具体哪个Linux操作系统
使用Docker,开发人员可以根据所有依赖关系构建相应的软件,针对他们所选择的操作系统。
然后,在部署时一切是完全一样的,因为一切都在DockerImage的容器在其上运行。
开发人员负责并且能够确保所有的相关性得到满足。
5.Google,微软,亚马逊,IBM等都支持Docker。
6.Docker支持Unix/Linux操作系统,也支持Windows或Mac
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)