(1)docker安装、镜像管理-导入导出

简介:

简介

  • 容器虚拟化,比传统的虚拟化轻量
  • 2013年出现,发展非常迅猛
  • Redhat在6.5版本开始支持docker
  • 使用go语言开发,基于apache2.0协议
  • 开源软件,项目代码在github维护
    Docker就是一个Container的管理工具,Container就是一个更轻量级的虚拟机,但是这个虚拟机没有操作系统和设备(操作系统是共享的)。
    进入到容量里,比如cpu、内存都是宿主机共享的

docker的优势

  • 启动非常快,秒级实现
  • 资源利用率很高,一台机器可以跑上千个docker容器
  • 更快的交付和部署,一次创建和配置后,可以在任意地方运行
  • 内核级别的虚拟化,不需要额外的hypevisor支持,会有更高的性能和效率
  • 易迁移,平台依赖性不强

(1)docker安装、镜像管理-导入导出

docker核心概念

镜像,是一个只读的模板,类似于安装系统用到的那个iso文件,我们通过镜像来完成各种应用的部署。
容器,镜像类似于操作系统,而容器类似于虚拟机本身。它可以被启动、开始、停止、删除等操作,每个容器都是相互隔离的。
仓库,存放镜像的一个场所,仓库分为公开仓库和私有仓库。 最大的公开仓库是Docker hubhub.docker.com),国内公开仓库(dockerpool.com

docker安装

环境:[root@centos7 ~]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core)

1、[root@centos7 ~]# curl https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker.repo
2、[root@centos7 ~]# yum install -y docker-ce #社区版本
速度比较慢,大家也可以直接下载rpm包
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
下载完,上传到linux下
也需要用yum安装,可以自动解决依赖关系
yum install -y docker-ce-xxxx.rpm

3、启动
[root@centos7 ~]# systemctl start docker.service

(1)docker安装、镜像管理-导入导出

docker镜像管理

从docker.com下载centos镜像:
速度很慢,需要配置docker加速器(参考 http://blog.csdn.net/xlemonok/article/details/71403534

(1)docker安装、镜像管理-导入导出

说明:这个url为加速器地址,需要同学们自行到阿里云申请
配置完加速器,重启docker服务,再次docker pull centos会快很多

[root@centos7 ~]# vi /etc/docker/daemon.json 
(1)docker安装、镜像管理-导入导出

[root@centos7 ~]# sudo systemctl daemon-reload
[root@centos7 ~]# sudo systemctl restart docker

开始下载:
(1)docker安装、镜像管理-导入导出

查看镜像
[root@centos7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 3fa822599e10 2 weeks ago 204MB

[root@centos7 ~]# docker tag centos jack:centos2
[root@centos7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 3fa822599e10 2 weeks ago 204MB
jack centos2 3fa822599e10 2 weeks ago 204MB

查看docker库可用的镜像:
[root@centos7 ~]# docker search centos
(1)docker安装、镜像管理-导入导出

运行docker中的镜像:
[root@centos7 ~]# docker run -it centos bash
##-i表示让容器的标准输入打开
##-t表示分配一个伪终端
##-d表示后台启动

[root@centos7 ~]# docker run -itd centos bash
(1)docker安装、镜像管理-导入导出

退出:exit后,自动关闭
(1)docker安装、镜像管理-导入导出

删除镜像:
[root@centos7 ~]# docker rmi jack:centos2

docker镜像使用容器生成新的镜像

进入已经开启的容器:
[root@centos7 ~]# docker exec -it 8460b43def9a /bin/bash

[root@8460b43def9a /]# yum install net-tools wget -y

将这个容器生产镜像
[root@centos7 ~]# docker commit -m "centos_with_nettools_and_wget" -a "jack" 8460b43def9a centos_with_net
##-m:=Mark,做标记
##-a:admin,维护人信息
##e52…:镜像ID
##centos_with_net:新的镜像名称

(1)docker安装、镜像管理-导入导出

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

镜像模板站:https://openvz.org/Download/template/precreated
下载centos7镜像:
[root@centos7 ~]# wget https://download.openvz.org/template/precreated/centos-7-x86_64-minimal.tar.gz
将该包导入docker镜像:
[root@centos7 ~]# cat centos-7-x86_64-minimal.tar.gz | docker import - centos-7-x86_64-minimal

(1)docker安装、镜像管理-导入导出

把docker中的镜像导出来:
[root@centos7 ~]# docker save -o centos_with_net.tar ee3ded21a687

恢复本地docker镜像:
先删除这个镜像:
[root@centos7 ~]# docker rmi ee3ded21a687

导入
[root@centos7 ~]# docker load --input centos_with_net.tar

或者
[root@centos7 ~]# docker load < centos_with_net.tar
##恢复后没名字,使用docker tag改名
(1)docker安装、镜像管理-导入导出

[root@centos7 ~]# docker tag ee3ded21a687 centos_with_net:latest
(1)docker安装、镜像管理-导入导出










本文转自 iekegz 51CTO博客,原文链接:http://blog.51cto.com/jacksoner/2050616,如需转载请自行联系原作者
目录
相关文章
|
3天前
|
存储 安全 持续交付
【Docker 专栏】Docker 镜像的版本控制与管理
【5月更文挑战第9天】本文探讨了Docker镜像版本控制与管理的重要性,包括可重复性、回滚能力、协作开发和持续集成。常用方法有标签、构建参数和版本控制系统。管理策略涉及定期清理、分层管理和镜像仓库。语义化标签、环境变量和配置文件在版本控制中有应用。版本系统与Docker结合能跟踪历史和促进协作。注意点包括优化镜像大小、确保安全性和兼容性。案例分析和未来趋势展示了持续发展的镜像管理技术,为Docker应用的稳定与进步保驾护航。
【Docker 专栏】Docker 镜像的版本控制与管理
|
1天前
|
前端开发 jenkins 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
|
1天前
|
jenkins 网络安全 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
|
1天前
|
Java 开发工具 git
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
10 4
|
1天前
|
网络安全 Docker 容器
测试开发环境下centos7.9下安装docker的minio
测试开发环境下centos7.9下安装docker的minio
|
2天前
|
NoSQL Redis Docker
Mac上轻松几步搞定Docker与Redis安装:从下载安装到容器运行实测全程指南
Mac上轻松几步搞定Docker与Redis安装:从下载安装到容器运行实测全程指南
12 0
|
2天前
|
安全 Linux 网络安全
安装docker
安装docker
15 0
|
2天前
|
网络协议 Linux Docker
在centos7下通过docker 安装onlyoffice
在centos7下通过docker 安装onlyoffice
|
2天前
|
Shell 数据安全/隐私保护 Docker
docker安装anaconda3 python环境
docker安装anaconda3 python环境
10 0
|
2天前
|
NoSQL Linux Redis
本地虚拟机centos7通过docker安装主从redis3.2
本地虚拟机centos7通过docker安装主从redis3.2
10 0