Docker
相关知识
它是一个轻量级的虚拟化技术,相比传统的虚拟化,具有启动速度快、资源需求少、性能高,并且单机可以支持上千个容器。
镜像(Image)
类似于虚拟机镜像,可以将它理解为一个面向Docker引擎的只读模板,包含了文件系统。它是创建容器的基础
容器(Container)
类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。
容器是从镜像创建的应用实例,可以将其启动、开始、停止、删除,而这些容器都是相互隔离、不可见的。它自身是只读的。容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身将保持不变。
仓库(Repository)
存放镜像文件的场所
1:安装
Docker支持在主流的操作系统平台上使用,包括Ubuntu CentOs Windows及 Mac
Ubuntu 14.04以上版本安装docker
apt-get install apt-transport-https
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
apt-get install -y lxc-docker
docker -v
2:镜像有关
2.1下载ubuntu包
docker pull ubuntu
注:该命令的格式为:docker pull NAME[:TAG];如果不指定TAG,则默认选择latest标签,即下载仓库中最新版本的镜像。
2.2查看本地已有的镜像
docker images
例:
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu 14.04 d2a0ecffe6fa 14 hours ago 188.4 MB
标签分别为:来自于哪个仓库、镜像的标签、镜像的ID、创建时间、镜像大小
2.3为本地镜像添加新标签(类似于添加快捷方式的作用)
docker tag ubuntu:1404 ubuntu:latest
2.4查看镜像详细信息
docker inspect
2.5查看公共仓库关于mysql的镜像
docker search mysql
例:
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relati... 822 [OK]
mysql/mysql-server Optimized MySQL Server Docker images. Crea... 27 [OK]
标签分别为:镜像名、描述、星级、是否官方创建、是否自动创建
2.6删除镜像
docker rmi ubuntu:1404
2.7基于已有容器创建镜像
docker commit -m ‘add a new file‘ -a ‘docker user‘ a925cb40b3f0 test
-a/--author=‘‘ 作者信息
-m/--message=‘‘ 提交消息
-p/--pause=true 提交时暂停容器运行
2.8 存出和载入镜像
可以用docker save 和docker load命令来存出和载入镜像
存出:docker save -o ubuntu_14.04.tar ubuntu:14.04
载入:docker load --input ubuntu_14.04.tar
或:docker load < ubuntu_14.04.tar
2.9 上传镜像
可以使用docker push 命令上传镜像到仓库,默认上传到DockerHub官方仓库(需要登录)
docker push NAME[:TAG]