虚拟化技术—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 id和centos的一样

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官方网站

时间: 2024-12-09 22:12:12

虚拟化技术—docker容器—安装篇的相关文章

虚拟化技术—docker容器—Dockerfile篇

什么是Dockerfile? 按照平时,我们都需要先让一个容器跑起来,然后进去搭建制定自己的服务,那有没有更简洁的方法呢?Dockerfile就是为了更方便的制定容器的. 首先先看Dockerfile里的一些定义,这里从网上截了个图,比较形象: 创建目录: 要先把需要的软件包放在同一个目录下 编写Dockerfile,这里要特别提醒,Dockerfile编写需要非常注意空格!!! vim Dockerfile 添加: # This is My first Dockerfile # Version

虚拟化技术—docker容器—网络模式

Docker作为目前最火的轻量级容器技术,有很多令人称道的功能,如Docker的镜像管理.然而,Docker同样有着很多不完善的地方,网络方面就是Docker比较薄弱的部分.因此,我们有必要深入了解Docker的网络知识,以满足更高的网络需求.这里先介绍Docker自身的4种网络工作方式. 1. Docker的4种网络模式 我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式: § host模式,使用--net=host指定

虚拟化技术—docker容器—PIPEWORK解读与实践

本文通过3个样例 -- 将Docker容器配置到本地网络环境中.单主机Docker容器的VLAN划分.多主机Docker容器的VLAN划分,演示了如何使用pipework帮助我们进行复杂的网络设置,以及pipework是如何工作的. 1.pipework的使用以及源码分析 Docker自身的网络功能比较简单,不能满足很多复杂的应用场景.因此,有很多开源项目用来改善Docker的网络功能,如pipework.weave.flannel等.这里,就先介绍一下pipework的使用和工作原理. pip

虚拟化技术—docker容器—web UI篇

docker官方提供了一个web UI界面管理容器和镜像,名为:shipyard 先修改一下配置文件 vim /etc/sysconfig/docker 添加: other_args="-H tcp://0.0.0.0:235 -H unix:///var/run/docker.sock" 注:centos7使用OPTIONS="-H tcp://0.0.0.0:235 -H unix:///var/run/docker.sock" 重启: /etc/init.d/

虚拟化技术—docker容器—管理篇

一.我们怎么更方便的进去已经start的容器呢? nsenter:可以通过这个命令进去docker的images里 首先获取一个容器的id: docker inspect --format " {{.State.Pid}}" centos_with_nettools 获取一个id 10592 nsenter --target 10592 --mount --yts --ipc --net 这样就进去了,当然这样很麻烦,所以可以写一个脚本: cat in.sh CNAME=$1 CPID

Docker容器基础篇——镜像、容器

一.docker简介 1. 什么是容器? 容器技术是一种虚拟化的方案,与传统虚拟机不同,传统虚拟机是通过中间层将一台或多台独立的机器虚拟运行于物理硬件之上,而容器则是直接运行于操作系统内核之上的用户空间.因此,容器虚拟化也被称为操作系统虚拟化. Docker容器与传统虚拟机的比较,如下表 特性 Docker 虚拟机 启动速度 秒级 分钟级 性能损耗 共享kernel几乎没有性能损耗 通过对于硬件层的模拟,增加了系统调用链路的环节,有性能损耗 系统支持量 上千个 几十个 隔离性 资源限制 完全隔离

Linux 系统中 Docker 容器安装及使用

Docker 简介 产生背景 项目的开发环境和部署环境不一致,部署环境配置难度大.集群技术的发展,集群的相同配置操作难度大. 基本理念 使用Go语言实现的云开源项目,"一次编译,处处运行",只需要一次配置环境,就可以在其他环境一键部署,软件即容器,虚拟化. 虚拟化技术 虚拟机:一种带环境安装的解决方案,模拟整套操作系统,笨重. 容器:将所有运行环境打包成互相隔离的容器,不进行硬件虚拟. 开发/运维(DevOps) 开发自运维.一次开发,处处运维. 官方资料 Docker Docker中

docker——容器安装tomcat

写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7u79-linux-x64.tar.gz 2.apache-tomcat-8.0.36.tar.gz 下载centos镜像:(下载centos这个过程极其漫长) 1 # 启动docker服务 2 service docker start 3 4 # 检索centos镜像 5 docker searc

docker入门-安装篇

一.docker介绍 1:docker官网 www.docker.com 2:github  https://github.com/docker/docker.github.io 3:开源的容器引擎,可以让开发者打包应用以及依赖的库,然后发布到任何流行的linux发行版上,移植很方便由go语言编写,基于apache2.0协议发布,基于linux kernel,要想在win下运行需要借助一个vm(虚拟机)来实现 ,自2013年开始,近些年发展迅猛,docker从1.13x开始,版本分为社区版ce和