Docker 是一个基于Linux容器(LXC-linux container)的高级容器引擎,基于go语言开发, 源代码托管在 Github 上, 遵从Apache2.0协议开源。Docker的目标是实现轻量级的操作系统虚拟化解决方案。
学习Docker首先要了解几个概念:
镜像—Docker的镜像和常见的系统ISO镜像类似,包含了应用程序的信息;
容器—容器相当于一个可以运行起来的虚拟机,应用程序运行在容器中,Docker运行在“Docker”上;
仓库—仓库是存放镜像的地方,有类似git的版本控制,同样分为公开仓库(Public)和私有仓库(Private)两种形式;
Docker支持大部分的Linux发行版,通过使用Docker容器,就可以在不同的操作系统,
不同的机器上运行自己的应用,不用关心硬件、运行环境之类的配置,应用程序的迁移变得非常简单。
相比传统虚拟机技术,Docker资源占用少,启动更快,很大的方便了项目的部署和运维。 Docker是在操作系统层面上实现虚拟化,复用本地主机的操作系统,传统方式是在硬件的基础上,虚拟出多个操作系统,然后在系统上部署相关的应用。
下面的这张图片参考相关博文,很形象的说明了Docker和VM之类的传统虚拟化技术的区别:
vs
>内核升级
有些操作系统内核可能太低需要升级内核:
下载 :kernel-3.10.0-1062.el7.x86_64.rpm
rpm -ivh kernel-3.10.0-1062.el7.x86_64.rpm grub2-set-default 'CentOS Linux (3.10.0-1062.el7.x86_64) 7 (Core)' grub2-editenv list reboot>Docker安装
# 卸载旧版本Docker软件 sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine \ container* # 定义安装版本 export docker_version=18.06.3 # 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data \ lvm2 bash-completion; # Step 2: 添加软件源信息 sudo yum-config-manager --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo; # Step 3: 更新并安装 Docker-CE sudo yum makecache all; version=$(yum list docker-ce.x86_64 --showduplicates | sort -r|grep ${docker_version}|awk '{print $2}'); sudo yum -y install --setopt=obsoletes=0 docker-ce-${version} docker-ce-selinux-${version}; # 设置开机启动 sudo systemctl enable docker; # 启动 Docker 后台服务 sudo systemctl start dockervi /etc/docker/daemon.json 加入以下内容:
{ "registry-mirrors": ["https://7bezldxe.mirror.aliyuncs.com/","https://IP:PORT/"] }私仓配置:
vi /usr/lib/systemd/system/docker.service #找到 ExecStart ExecStart=/usr/bin/dockerd --insecure-registry 10.12.20.20