docker 01

容器技术的核心有以下几个内核技术组成:

CGroups(Control Groups)-资源管理NameSpace-进程隔离

SELinux安全

优势
传统虚拟机需要给每个VM安装操作系统容器使用的共享公共库和程序
启动非常快速
劣势
容器的隔离性没有虚拟化强

共用Linux内核,安全性有先天缺陷SELinux难以驾驭

监控容器和容器排错是挑战
docker 安装
把软件 docker-engine docker-engine-selinux 拷贝到私有yum仓库,运行 createrepo .

安装 docker
yum clean all
yum install -y docker-engine docker-engine-selinux

或cd docker
yum install -y *.rpm (当前目录下YUM安装也可以解决依赖)

设置开机启动,启动 docker 服务
systemctl enable docker
systemctl start docker

系统刚刚配置完是没有镜像的
查看系统镜像
docker images

国外镜象
https://hub.docker.com/
国内刀客
http://daocloud.io/

从官方源搜索镜像,最好使用星多的,官方的
docker search busybox

下载镜像,pull + 镜像名字 ,
docker pull busybox

上传镜像
docker push busybox

把本机镜像备份为 tar 包
docker save busybox >busybox.tar

把备份的tar包导入到本机镜像
docker load < busybox.tar

练习导入镜像

1、查看运行的容器
docker ps

docker ps -a
第一列容器ID 第二列容器镜像 第三列命令 最后另一列容器名字

docker run centos echo hello #若没centos会自动下载安装后执行

2、创建一个 bash 交互的容器
docker run -it centos /bin/bash

退出不关闭容器
ctrl+q+p
再用docker ps 查看是否存在

3、创建一个非交互的容器
docker run nginx

docker run -itd centos /bin/bash

命令列表

– docker images //查看镜像列表
– docker history //查看镜像制作历史
– docker inspect //查看镜像底层信息
– docker pull //下载镜像
– docker push //上传镜像
– docker rmi //删除本地镜像
– docker save //镜像另存为tar包
– docker load //使用tar包导入镜像
– docker search //搜索镜像
– docker tag //修改镜像名称和标签

查看镜像列表
docker images

查看镜像制作历史docker history busybox

查看镜像底层信息

docker inspect busybox

下载镜像docker pull busybox

上传镜像docker push

删除本地镜像docker rmi busybox #若有在用,则无法删除

镜像另存为tar包docker save busybox >busybox.tar
使用tar包导入镜像
docker load < busybox.tar

搜索镜像

docker search busybox

修改镜像名称和标签

docker tag busybox:latest busybox:v1

容器相关命令

? 命令列表
– docker run //运行容器
– docker ps //查看容器列表
– docker stop //关闭容器
– docker start //启动容器
– docker restart //重启容器
– docker attach|exec //进入容器
– docker inspect //查看容器底层信息
– docker top //查看容器进程列表
– docker rm //删除容器

以交互模式启动一个容器
docker run -it centos bash

启动的容器放在后台
docker run -itd centos bash

显示正在运行的容器
docker ps

显示所有容器
docker ps -a

显示所有容器,单只显示 id
docker ps -aq

启动,停止,重启容器
docker start|stop|restart 容器id #id 可以TAB

进入容器
docker exec -it 容器id /bin/bash

连接容器 console,exit 退出会导致容器关闭,可以使用 CTRL +(p,q) 退出
docker attach 容器id

显示容器详细信息
docker inspect 容器id

查看容器内运行的进程
docker top 容器id

删除容器
docker rm 容器id

关闭所有容器
docker stop $(docker ps -aq)
docker rm $(docker ps -aq)
强制关闭所有容器
docker rm -f $(docker ps -aq)

启动容器并设置主机名为dbserver1
docker run -h dbserver1 -itd centos bash

练习:
1、配置物理主机使用网易开源镜像站点作为yum源
http://mirrors.163.com http://mirrors.aliyun.com/
2、在线安装docker
[[email protected] pub]# yum install -y docker
3、起动服务
4、查找busybox
[[email protected] pub]# docker search busybox
5、下载busybox
[[email protected] pub]# docker pull busybox
6、查看镜像
[[email protected] pub]# docker images
7、导出busybox
[[email protected] pub]# docker save busybox > /tmp/busybox.tar
8、将导出的镜像拷贝到虚拟主机,并导入
[[email protected] docker_images]# docker load < /tmp/busybox.tar

使用docker
1、通过镜像起动容器
[[email protected] docker_images]# docker run centos echo hello
2、查看运行状态的容器
[[email protected] docker_images]# docker ps
因为echo hello已经运行结束,所以容器停止了
3、查看所有的容器
[[email protected] docker_images]# docker ps -a
第一列是容器的id,第二列是容器基于的镜像,第三列是运行的命令,最后一列是容器的名字
4、起动容器,并进入容器操作
[[email protected] docker_images]# docker run -it centos bash
5、起动容器后,如果想返回宿主机,但是不想停止容器,可以使用组合键ctrl+q+p
6、删除本地镜像
[[email protected] docker_images]# docker rmi centos
注意:如果有容器正在使用该镜像,则无法删除
7、停止容器
[[email protected] docker_images]# docker stop e4e<tab>
e4e是容器id开头的3个字符
8、删除容器
[[email protected] docker_images]# docker rm e4e<tab>

原文地址:http://blog.51cto.com/13478354/2083196

时间: 2024-10-09 12:57:52

docker 01的相关文章

&lt;Docker&gt;01 命令参数解析

最近Docker1.0稳定版发布了,这给paas注入新鲜的血液. Docker是一个功能强大的自动化分布式系统:大规模的Web部署.数据库集群.持续部署系统.私有PaaS.面向服务的体系结构等. Docker是一种增加了高级API的LinuX Container(LXC)技术,提供了能够独立运行Unix进程的轻量级虚拟化解决方案. 它提供了一种在安全.可重复的环境中自动部署软件的方式. 关于Docker运行在Centos的操作,下面由cantgis进行讲解. Cantgis的实验环境都是在Cen

Docker 01 Introduction

Docker的组成: Docker Engine,一个轻量级.强大的开源容器虚拟化平台,使用包含了工作流的虚拟化技术,帮助用户建立.并容器化一个应用. Docker Hub,提供的一个SaaS服务,用来分享和管理你的程序栈 Docker的优点: 应用程序快速交付 部署和扩展更加简便 更高的部署密度,更满的运行负载 更快的部署使得管理更加简单 Docker的架构: Docker使用CS的架构,包括Docker Client和Docker Daemon两个部分.Docker Client和Docke

DOCKER 01:镜像和容器的基础命令使用

本文主要谈谈 docker 命令怎么使用的问题! 关于镜像的操作命令 已经知道,容器是镜像的运行的实例,所以想要运行一个容器,事先得拥有这个容器的镜像. 1. 使用页面搜索镜像: 在默认的注册点 docker hub,不管是官方还是非官方都上传了很多镜像: https://hub.docker.com 可以通过搜索指定的镜像名称找到对象的镜像仓库,如 nginx: 这里只是截图的一部分,可以看到第一个和后面的两个有区别,后面两个名字中间都有斜线. 这个斜线前面的是用户名,比如第二个,前面是 ng

基于Consul+Registrator+Nginx实现容器服务自动发现的集群框架

我们先来看一下服务发现常用的框架有哪些: zookeeper eureka etcd consul 这里就不挨个来介绍它们了,本文中主要以consul为主,如果你在大量接触或使用微服务的话,你可能会碰到一个问题?当你创建的服务数量越来越多时,这些服务之间的通信便越难管理,而且维护代价会越来越高.consul可以给你答案,我们一起来了解一下consul: 1.了解consul Consul是一个分布式,高度可用且支持多数据中心的服务发现,配置和编排工具. Consul支持大规模部署,配置和维护面向

我喜欢减肥我们来减肥吧

http://www.ebay.com/cln/honus.jyw4mvptb/cars/158313278016/2015.01.28.html http://www.ebay.com/cln/honus.jyw4mvptb/cars/158313282016/2015.01.28.html http://www.ebay.com/cln/honus.jyw4mvptb/cars/158313289016/2015.01.28.html http://www.ebay.com/cln/usli

百度回家看沙发沙发是减肥了卡斯加积分卡拉是减肥

http://www.ebay.com/cln/hpryu-caw8ke/cars/158056866019/2015.01.31 http://www.ebay.com/cln/xub.50x2l7cj/cars/158445650015/2015.01.31 http://www.ebay.com/cln/xub.50x2l7cj/cars/158445674015/2015.01.31 http://www.ebay.com/cln/xub.50x2l7cj/cars/1584456790

巢哑偕倥乇椭煞谙暗逞帕俸

IEEE Spectrum 杂志发布了一年一度的编程语言排行榜,这也是他们发布的第四届编程语言 Top 榜. 据介绍,IEEE Spectrum 的排序是来自 10 个重要线上数据源的综合,例如 Stack Overflow.Twitter.Reddit.IEEE Xplore.GitHub.CareerBuilder 等,对 48 种语言进行排行. 与其他排行榜不同的是,IEEE Spectrum 可以让读者自己选择参数组合时的权重,得到不同的排序结果.考虑到典型的 Spectrum 读者需求

我国第三代移动通信研究开发进展-尤肖虎200106

众所周知,数据科学是这几年才火起来的概念,而应运而生的数据科学家(data scientist)明显缺乏清晰的录取标准和工作内容.此次课程以<星际争霸II>回放文件分析为例,集中在IBM Cloud相关数据分析服务的应用.面对星际游戏爱好者希望提升技能的要求,我们使用IBM Data Science Experience中的jJupyter Notebooks来实现数据的可视化以及对数据进行深度分析,并最终存储到IBM Cloudant中.这是个介绍+动手实践的教程,参会者不仅将和讲师一起在线

pl/sql学习1——标量变量psahnh6S

为类型.不能用于表列的数据类型.范围为的子类型.自然数.为的子类型.具有约束为单精度浮点数.为变量赋值时.后面要加为双精度浮点数.为变量赋值时.后面要加.为数字总位数.为小数位数是的子类型.最大精度位是的子类型.最大精度位单精度浮点型是的子类型.最大精度位双精度浮点型定义精度为位的实数..定义为位的整数.变长字符串.最长测试变量数据!.定长字符串.最长测试变长二进制字符串物理存储的为类型...固定长度.个字节使用定义数据类型那个最小值:最大值:最小值:最大值:最小值:最大值:最小值:最大值:最小