Docker学习笔记(1)——基本概念_download-dockerimages.sh 授权问题-程序员宅基地

技术标签: Linux相关  docker  

一.了解Docker:

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。 

Docker通常用于如下场景:
  • web应用的自动化打包和发布;
  • 自动化测试和持续集成、发布;
  • 在服务型环境中部署和调整数据库或其他的后台应用;
  • 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。
二.架构图:


如何通俗易懂的理解Docker呢,这里引用知乎的一个回答,我认为比较好理解:


接着我们来运行第一个docker镜像:

首先学习下基本命令:

从docker远程仓库拉取镜像到本地:

docker pull [opt] NAME[:TAG]

查看镜像:

docker images

创建第一个镜像: 

docker pull hello_world

接着通过docker images即可查看到新创建的镜像。

接着创建第一个docker容器,即运行donamecker镜像:

docker run [opt] IMAGE

那么我们来尝试运行刚刚创建的那个镜像:

docker run hello_world

(镜像的名称也可以用它的ID替代)


详细运行过程:


当我们执行docker pull的时候,客户端向docker daemon发送了一条pull命令,docker daemon先检测本机是否存在该镜像,如果存在则不操作,否则就到仓库中寻找并拿到本地来。

执行docker run的时候,docker run发送一条命令到docker daemon,docker daemon先检测本地是否存在该镜像,不存在的话就去pull一下,存在的话就直接运行该镜像,把它变成docker的容器。


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xxxslinyue/article/details/79399017

智能推荐

Linux硬盘分区管理,创建分区并格式化,fdisk命令_fdisk /dev/vda-程序员宅基地

文章浏览阅读2.9k次。1.如何在虚拟机添加硬盘使用VMware添加硬盘教程如下:右键虚拟机,选择设置选择硬盘选择scsi(smcall computer systecm interface)创建虚拟磁盘大小根据具体情况指定点击完成,即创建成功2.MBR/msdos分区模式MBR:主引导记录(MBR,Master Boot Record)是位于磁盘最前边的一..._fdisk /dev/vda

API-MS-WIN-CORE_api-ms-win-core-console-l3-2-0.dll-程序员宅基地

文章浏览阅读1.2w次。API-MS-WIN-APPMODEL-STATE-L1-2-0.DLLAPI-MS-WIN-CORE-APIQUERY-L1-1-0.DLLAPI-MS-WIN-CORE-APIQUERY-L1-1-1.DLLAPI-MS-WIN-CORE-APPCOMPAT-L1-1-0.DLLAPI-MS-WIN-CORE-APPCOMPAT-L1-1-1.DLLAPI-MS-WIN-CORE-A..._api-ms-win-core-console-l3-2-0.dll

使用Metasploit破解MySQL密码_metasploit mysql_login set user_file-程序员宅基地

文章浏览阅读774次。使用Metasploit破解MySQL密码实验环境:VMware workstation——kali linux+Windows server 2008实验目的:使用Metasploit破解Windows server 2008下xampp中MySQL数据库密码kali linux端设置步骤一:编辑Metasploit中密码库文件root_userpass.txt,把MySQL的密码写入,注意格式和原始内容保持一致┌──(root????kali)-[/usr/share/metasploit-_metasploit mysql_login set user_file

安装sql server 数据库引擎服务,sql server 复制,全文搜索等失败_sqlserver数据库引擎服务安装失败的原因-程序员宅基地

文章浏览阅读2.3w次,点赞20次,收藏142次。个人经验,仅供参考,如有问题,欢迎指正。上一篇写了自己在装sql server时点击setup.exe报错和安装程序库支持文件闪退问题的处理方法这么长的话怎么连个标点符号都没有这你都能读先来厉害了我的肺活量。。解决了上面的问题后以为这下应该稳了,没想到啊没想到,在即将竣工的时候,又出现了一系列眼花缭乱的问题,真是生活处处有惊喜,呵呵哒!!!用了洪荒之力终于重新安装成功了,在此分享下。错误1..._sqlserver数据库引擎服务安装失败的原因

c语言实验逆置正整数sdut,【stut 逆置正整数】-程序员宅基地

文章浏览阅读509次。C语言实验——逆置正整数Time Limit: 1000ms Memory limit: 65536K有疑问?点这里^_^题目描述输入一个三位正整数,将它反向输出。输入3位正整数。输出逆置后的正整数。示例输入123示例输出321提示注意130逆置后是31来源crq该题本身并不难,但是使用java代码将更为高效、简洁,该题结合java正则表达式,仅用13行代码就可以搞定。import jav..._入一个三位正整数,将它反向输出。 输入描述3位正整数。 输出描述逆置后的正整

数模优秀论文总结—2018“大型百货商场会员画像描绘”_大型百货商场会员画像描绘数学建模pandas-程序员宅基地

文章浏览阅读1w次,点赞15次,收藏55次。基于RFMT模型的百货商场会员画像描绘;大型百货商场会员画像描述;基于RFMS 指标的大型百货商场会员画像数据挖掘_大型百货商场会员画像描绘数学建模pandas

随便推点

Log4j性能调优_log4j数据量大-程序员宅基地

文章浏览阅读5.1k次。 不久前在系统中完成了监控的功能,监控系统的信息量很大,用户对页面的每一个点击都会产生记录,每天下来的日志量有2G多,我用log4j把这些监控记录放在日志里,然后进行异步处理,但即使是这样,记录日志会对磁盘IO产生频繁的访问,而IO通常就是系统的瓶颈所在。于是对log4j配置进行一些调优就成了必要。下面是我系统中的log4j配置: log4j.rootLogger=ERROR,fileout,stdoutlog4j.logger.monitorLogger=INFO,m_log4j数据量大

linux系统使用socket实现ftp,使用SOCKET实现FTP的简易客户端-程序员宅基地

文章浏览阅读118次。6. 保存日志文件//保存日志文件void CFTP::save_log( const char* str_log, FILE* pLogFile ){//格式化当前系统时间time_t nowtime = time(NULL); //获取当前时间struct tm *local = localtime(&nowtime); //获取当前系统时间char tmp[2048] = {0};..._linux使用socket编程实现ftp协议包含功能演示

ServiceManager & SystemService_android servicemanage人.addservice()-程序员宅基地

文章浏览阅读2.3k次。http://blog.csdn.net/xieqibao/article/details/6602820Android 之 ServiceManager与服务管理ServiceMananger是android中比较重要的一个进程,它是在init进程启动之后启动,从名字上就可以看出来它是用来管理系统中的service。比如:InputMethodService、Acti_android servicemanage人.addservice()

基于短文本的食源性疾病事件探测技术-程序员宅基地

文章浏览阅读222次。祝天刚1,2,郭旦怀1,王学志1,黎建辉1,周园春11. 中国科学院计算机网络信息中心,北京 100190; 2. 中国科学院大学,北京 100049摘要:微博数..._食源性疾病snp distance

easyui dataGrid与后台交互传递数据_onbeforeload: function(param){-程序员宅基地

文章浏览阅读1.7w次,点赞2次,收藏17次。1.前台向后台传递数据属性queryParams,传递json类型的参数给后台除了queryParams指定参数外,dataGrid默认传递page rows两个参数给后台。属性url:指定后台数据接口地址pageSize:指定每页显示数据量$('#sourceDG').datagrid({ url:"data.json", pageSize:10, qu..._onbeforeload: function(param){

c#中英文字符串格式化输出-程序员宅基地

文章浏览阅读1.4k次。字符串的格式化输出。1.一般来说,对于汉字和英文,长度一样,但他们所占的字节数书不一样的,汉字占两个字节,英文占一个字节。所以为了格式化输出,即输出字符串的长度一样,我使用了下面的方法,例如string str1 = “博客”;string str2 =“CSDN”;str1 = new string(' ',15 - Encoding.GetEncoding("GB2312").