技术标签: 手把手docker 「初级篇」手把手学docker
>>原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!
>>原文链接地址:跟我一起学docker(二)–核心概念和安装
环境介绍:
操作系统:64bit CentOS7
docker版本:17.05.0-ce(最新版本)
版本新功能:
https://github.com/docker/docker/blob/master/CHANGELOG.md
安装步骤
系统:64位centos7
迅雷直接下载:
http://mirrors.njupt.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso
虚拟机:virtualBox
最好是安装完整版本的centos7,vm安装centos7的过程我这里都不截图了,比较简单百度都可以看到。
要求: 内核版本最低为3.10
查看当前内核版本: uname –r
要求: 更改网卡配置
更改网卡配置:vi/etc/sysconfig/network-scripts/ifcfg-enp0s3
更改完后重启服务:service network restart
注意:如果ifconfig命令不识别的话需要安装:
yum installnet-tools
通过yum方式安装docker:
第一步:更新yum源: sudo yum update
第二步:增加docker的yum源:
输入命令:vi/etc/yum.repos.d/docker.repo
输入:
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
这样我们就添加了yum源
可以通过命令:sudo vi /etc/yum.repos.d/docker.repo 查看:
第三步:通过yum安装docker
sudo yum install docker-engine
第四步:启动docker服务
sudo service docker start
第五步:查看版本信息,通过测试用例验证docker是否安装成功
验证docker版本:sudo docker version
测试:sudo docker run hello-world
docker配置(按照正常的开发应用是docker控制有个专门的用户,为了学习方便我直接使用了root用户):
创建docker用户组
sudo groupadd docker
增加当前用户到docker分组
sudo usermod -aG docker liming
验证在不使用sudo的情况下docker是否正常工作
docker run hello-world
设置docker开机启动
sudo chkconfig docker on
docker卸载
查看安装包
yum list installed | grepdocker
移除安装包:
sudo yum -y removedocker-engine.x86_64
清除所有docker依赖文件
rm -rf /var/lib/docker
删除用户创建的配置文件
Docker的核心概念
Docker核心概念之镜像:
Docker 镜像就是一个只读的模板。
例如:一个镜像可以包含一个完整的 centos操作系统环境,里面仅安装了 Apache 或用户需要的其它应用程序。
镜像可以用来创建 Docker 容器。
创建Docker镜像有几种方式,多数是在一个现有镜像基础上创建新镜像,因为几乎你需要的任何东西都有了公共镜像,包括所有主流Linux发行版,你应该不会找不到你需要的镜像。不过,就算你想从头构建一个镜像,也有好几种方法。
要创建一个镜像,你可以拿一个镜像,对它进行修改来创建它的子镜像 。
Docker核心概念之容器
Docker 利用容器来运行应用。
容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。
可以把容器看做是一个简易版的 Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。
注:镜像是只读的,容器在启动的时候创建一层可写层作为最上层。
Docker核心概念之仓库
仓库是集中存放镜像文件的场所。
有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。
Centos的6.0和7.0就是tag
文章浏览阅读1.1k次。1.冒泡排序冒泡排序是逻辑最简单的一种排序方法,通过相邻两个数比较交换来实现。从最后一个数开始,两两比较,将最小的数交换到前面。这样在第一次比较交换后,第一个数就是最小的,第二次就可以不用再比较第一个数。源代码实现如下: void bubble_sort(int *a,int num)//冒泡排序法{ register int i,j,temp; for(i=0;ii;j--)_分别编写函数进行冒泡排序、简单插入排序、简单选择排序、快速排序;
文章浏览阅读720次,点赞22次,收藏19次。内网渗透(二)必须了解的一些概念:Windows域环境的概念、应用场景、相关名词及分类,活动目录和域数据库管理工具,还有Windows域用户与组关系,A-G-DL-P策略。
文章浏览阅读1.7k次。今天又遇到一个问题: List不能用contains()检查是否包含某条数据,在网上看了看java8的内容,发现一个好玩的,这个就是Lambda表达式。lambda表达式:个人理解:优点是可以不用写for循环,节省资源。缺点就是没有可读性,比如在调试的时候,不好进行调试。我想在wxsList中检查是否含有 “吴先生”这个数据:List<WxsEntity> wxsList=new ArratList<>();//wxsList集合,假设里面含有n条数据//WxsEn_list contains 失效
文章浏览阅读3k次。HQChart使用教程44-uniapp使用条件编译同时支持h5,app,小程序背景安装插件template 设置创建插件设置HQChart大小调整效果图完整代码背景由于小程序/app很多局限性(无法创建DOM,canvas异步绘图等)导致HQChart开发的时候分成两个版本(小程序版本和H5页面版本)。使用条件编译我们可以把这2个版本组件同时包含的工程中,并且通过平台判断动态加载对应版本的..._hqchart插件市场地址
文章浏览阅读270次,点赞9次,收藏3次。gradle-maven-plugin:1.0.11:invoke (default)_failed to execute goal org.thingsboard:gradle-maven-plugin:1.0.11:invoke (de
文章浏览阅读1.4w次,点赞38次,收藏246次。做项目时,突然需要用到GUI可视化窗口来和用户互动,就即时学习了一下python自带的GUI包Tkinter,然后根据下面的基本内容可以实现自己的一些简单窗口了 此篇文章是跟着沫凡小哥的视频学习的,附上学习网址:https://morvanzhou.github.io/tutorials/python-basic/什么是 tkinter 窗口1.1 什么是 Tkinter P..._python tkinter 窗口是什么
文章浏览阅读120次。2、收货地址/激活地址必须一致,流量卡有着严格的激活流程,部分流量卡是需要运营商工作人员激活验证,如果你的收货地址和激活地址不一致,是无法激活成功的,所以大家在申请时不要心存侥幸。4、申请年龄,每张流量卡都有申请年龄限制,比如16~55周岁、20~60周岁,在申请流量卡时,要看一下你的年龄是否符合申请要求,如果年龄不符合的话就不要申请了。3、禁发地区,每张流量卡都是有禁发地区的,只不过禁发地区不同而已,如果你所在的地区处于流量卡的禁发区,那么就不要申请了,因为申请了也是会审核失败。
文章浏览阅读384次,点赞8次,收藏10次。最后小编要说,不管是4G的流量卡还是5G的流量卡,都是可以在4G和5G的手机上使用,手机卡可以从4G升级成5G,而手机是升级不了的,只能换。很多朋友在办理流量卡时,都会咨询小编一个问题,那就是网上的流量卡是4G还是5G的,其实,对于这个问题小编有话要讲。 在网上销售的这些流量卡当中,有些是4G流量卡,有些是5G流量卡,具体取决于卡的功能和网络制式。4、5G手机+4G手机卡+5G升级包=5G网速。5、5G手机+5G手机卡+5G基站=5G网速。1、5G手机+4G手机卡=4G网速。
文章浏览阅读298次,点赞6次,收藏7次。计算机视觉技术的发展历经了多个阶段,每个阶段都为后续的进步奠定了坚实的基础。从最初的模式识别领域,主要关注二维图像的分析和识别,到后来逐渐发展为一个独立的学科,计算机视觉的研究范围和应用领域不断拓宽。除此之外,计算机视觉技术还广泛应用于健康和安全领域,如用于监控社交距离规定和佩戴口罩的情况,以及通过肺部图像诊断病情等。总之,计算机视觉技术的发展和应用领域已经取得了显著的成果,并在不断推动着科技进步和社会发展。随着深度学习、三维视觉、视频分析等技术的不断突破,计算机视觉将在更多领域展现出其强大的应用潜力。
文章浏览阅读264次。1.迷宫X星球的一处迷宫游乐场建在某个小山坡上。它是由10x10相互连通的小房间组成的。房间的地板上写着一个很大的字母。我们假设玩家是面朝上坡的方向站立,则:L表示走到左边的房间,R表示走到右边的房间,U表示走到上坡方向的房间,D表示走到下坡方向的房间。X星球的居民有点懒,不愿意费力思考。他们更喜欢玩运气类的游戏。这个游戏也是如此!开始的时候,直升机把100名玩家放..._第八届蓝桥杯省赛c++a组
文章浏览阅读1.6w次,点赞25次,收藏47次。最近开始搞C++开发,掉头发中…开发环境使用的是VSCode,并使用CMake插件编译工程。CMake的配置文件CMakeList.txt中已经配置了各种复杂的inclue关系,这样在源码中写include时可以不用带路径,CMake编译没问题。但是在VSCode的开发环境中,智能感知(intelliSense)并不知道这些include,于是各种错误提示include的源文件找不到,看起来很不爽、很烦人。按照一般资料,你需要自行配置VSCode中的include路径,但是对于复杂的工程,要保证时刻更新,_vscode开发c++时让intellisense正确识别include关系
文章浏览阅读845次,点赞17次,收藏2次。无人机倾斜摄影技术是通过无人机低空摄影获取高清晰影像数据,通过重建软件生成三维点云与模型,并结合无人机定位信息、相机姿态信息,获得地形、地物等三维坐标值,实现地理空间信息的快速获取,是地理信息测绘领域的一门新兴技术和重要技术手段。