博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[笔记] docker入门篇1
阅读量:5880 次
发布时间:2019-06-19

本文共 1635 字,大约阅读时间需要 5 分钟。

  hot3.png

1.docker的概念

docker是一个依赖于linux内核的软件。同时是一个典型的C/S架构的软件,分为Docker Client和Docker Server。熟悉github的同学可以和git做一下对比。

1.介绍两个至关重要的概念(镜像,容器)

  • 1.镜像,容器

一般书上会拿面向对象编程语言的例子来解释,镜像相当于这类语言中的类,而容器则是new出来的对象。我是这样理解的,动手装过操作系统的同学都知道iso文件吧,这个文件也叫作镜像文件,我们说的docker镜像就相当于这个iso文件。将这个iso文件执行起来(就是安装操作系统的过程),在内存中建立的模型就是容器了。

  • 2.镜像的两种获取方式(提到的命令在下一篇中会详细的讲解,有印象即可)

  • 1.Dockerfile

这种方式是自己写Dockerfile脚本,同shell script类似,但是要简单得多。下文会介绍脚本命令。写完Docker脚本后,可以运行docker build -t tag dockerfile-path(Dockerfile文件路径),例如:docker build -t icngor/lamp:2.0 ·(注意最后的点,表示Dockerfile就在当前目录)

  • 2.从dockerHub或第三方网站下载

dockerHub是docker官方提供的镜像下载中心,第三方网站一般是从这个网站同步的,也可以是由公司内部搭建的。使用docker pull 镜像名称:版本,例如:docker pull icngor/lamp:2.0

通过上面两种方式获得了image(镜像)。接下来使用docker images查看镜像 输入图片说明

2.Dockerfile命令

* FROM centos:centos6要构建一个新的镜像,首先需要继承一个已有的镜像。这条指令就是在centos:centos6的基础上进行构建。执行docker build时会下载centos:centos6镜像。* MAINTAINER 作者信息* ENV 
设置一个系统的环境变量* COPY
,ADD
都是将文件复制到容器,ADD与COPY相比多了两个功能,下载URL和解压. * EXPOSE暴露容器中的端口号* ENTERYPOINT,CMD,RUN三者的相同点都可以运行shell命令,下面对比一下三者的不同点: * RUN是在building image时会运行的指令, 在Dockerfile中可以写多条RUN指令. * CMD和ENTRYPOINT则是在运行container (容器)时会运行的指令, 都只能写一条, 如果写了多条, 则最后一条生效.* CMD和ENTRYPOINT的区别是: CMD在运行时会被command覆盖, ENTRYPOINT不会被运行时的command覆盖如果要覆盖ENTRYPOINT, 那么可以在docker run运行时输入 --entrypoint="....".* ONBUILD在子镜像构建过程中执行的一些通用操作

1.Dockerfile实例编写

docker的安装【很简单,就没写,百度一下有很多哦】

两个重要的概念和Dockerfile

docker常用命令总结

常用命令

docker build -t 命名镜像 指定Dockerfile文件的位置 docker images docker run -it -d -p -P -v -e --name docker ps -a docker exec -it tag /bin/bash

docker run -it --rm 容器推出口,删除容器

转载于:https://my.oschina.net/icngor/blog/737267

你可能感兴趣的文章
怎样在 Chromebook 上安装 Linux 系统?
查看>>
《循序渐进学Docker》——3.2 安装Windows和Ubuntu双系统
查看>>
《JavaScript开发框架权威指南》——1.7 创建Bower包
查看>>
《树莓派实战秘籍》——1.7 技巧07使用过压获得更高的性能
查看>>
我的 10 年自学编程之路
查看>>
Visual C# 2010入门经典》一1.4 编写第一个程序
查看>>
《HTML5 canvas开发详解(第2版)》——2.6 在画布上合成
查看>>
《OpenGL ES 3.x游戏开发(下卷)》一2.4 展翅飞翔的雄鹰
查看>>
《敏捷制造——敏捷集成基础结构设计》——2.2 敏捷企业集成基础结构建模技术...
查看>>
史上最复杂的验证邮件地址的正则表达式
查看>>
《Unity 4 3D开发实战详解》一导读
查看>>
工行数据中心高级经理 李雁南:接口冒烟测试方法
查看>>
GraphQL-Java用来向前端返回json数据
查看>>
Cloud and the Era of AR/VR Technology: What's Next
查看>>
我们为什么需要Greenplum?
查看>>
jsoup (网页获取与解析)
查看>>
【玩转数据系列十】利用阿里云机器学习在深度学习框架下实现智能图片分类...
查看>>
解决之道:从互联网安全到IoT安全,如何关上潘多拉魔盒?
查看>>
Activity过渡动画
查看>>
Android 四种常见的线程池
查看>>