虚拟化技术—docker容器—安装篇

简介:

核心概念

1. 镜像

是一个只读的模板类似于安装系统用到的那个iso文件我们通过镜像来完成各种应用的部署。

2. docker容器

镜像类似于操作系统而容器类似于虚拟机本身。它可以被启动、开始、停止、删除等操作每个容器都是相互隔离的。

3. docker仓库

存放镜像的一个场所仓库分为公开仓库和私有仓库。 最大的公开仓库是Docker hubhub.docker.com国内公开仓库http://dockerpool.com/

一、安装

centos6 上安装(6.5之前版本需要升级一下 yum update )

yum install -y epel-release

yum install -y docker-io

如果是centos7

yum install -y docker

启动docker

/etc/init.d/docker start

 

二、镜像管理

docker pull  centos   //docker.com获取centos镜像如果太慢直接做个加速

先到 https://cr.console.aliyun.com/ 注册一下,登录成功后,在控制台,看左侧,有一个加速器按钮,点开找到自己的专属加速链接,我的是https://u6vpvkfn.mirror.aliyuncs.com

然后vi  /etc/sysconfig/docker

最下面增加一行:

other_args="--registry-mirror=https://u6vpvkfn.mirror.aliyuncs.com"

centos7是:OPTIONS="--registry-mirror=https://u6vpvkfn.mirror.aliyuncs.com"


docker images  //查看本地都有哪些镜像

docker tag centos syk123  //centos镜像设置标签为syk123再使用docker images查看会多出来一行改行的image idcentos的一样

docker search (image-name)   //docker仓库搜索docker镜像后面是关键词

docker run -t -i centos  /bin/bash  //用下载到的镜像开启容器-i表示让容器的标准输入打开-t表示分配一个伪终端要把-i -t 放到镜像名字前面

当该镜像发生修改后我们可以把该镜像提交重新生成一个新版本进行在本地。

docker ps  //查看运行的容器

docker rmi centos  //用来删除指定镜像 其中后面的参数可以是tag如果是tag时实际上是删除该tag只要该镜像还有其他tag就不会删除该镜像。当后面的参数为镜像ID时则会彻底删除整个镜像连通所有标签一同删除

docker ps -a  //查看所有容器包括已经退出的。


三、创建镜像基于已有镜像的容器创建

运行docker run后进入到该容器中我们做一些变更比如安装一些东西然后针对这个容器进行创建新的镜像

docker commit -m "change somth"  -a "somebody info"  image_id  //通过docker images获取id 新镜像名字

例如  docker commit -m "install httpd" -a "syk" 2c74d574293f centos_net-tools

这个命令有点像svn的提交-m 加一些改动信息-a 指定作者相关信息  2c74d这一串为容器id再后面为新镜像的名字


四、创建镜像基于本地模板导入

模块获取可以直接在网上下载一个模块  http://openvz.org/Download/templates/precreated

wget https://download.openvz.org/template/precreated/centos-6-x86-minimal.tar.gz

cat centos-6-x86.tar.gz |docker import - centos-6-x86

把现有镜像导出为一个文件

docker save -o syk-centos.tar  centos-6-x86

我们还可以用该文件恢复本地镜像

docker load --input aming-centos.tar  或者

docker load < aming-centos.tar

docker push image_name  //可以把自己的镜像传到dockerhub官方网站




本文转自 sykmiao 51CTO博客,原文链接:http://blog.51cto.com/syklinux/1860204,如需转载请自行联系原作者

相关文章
|
4月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
453 6
|
4月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
633 5
|
4月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
458 2
|
6月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
1024 108
|
7月前
|
存储 监控 测试技术
如何将现有的应用程序迁移到Docker容器中?
如何将现有的应用程序迁移到Docker容器中?
582 57
|
4月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
7月前
|
存储 监控 Java
如何对迁移到Docker容器中的应用进行性能优化?
如何对迁移到Docker容器中的应用进行性能优化?
507 59