1.Docker的介绍与安装
Posted 89564f
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.Docker的介绍与安装相关的知识,希望对你有一定的参考价值。
1.Docker的介绍与安装
1.1 什么是Docker
Docker是基于Go语言实现的云开源项目。 Docker的主要目标是Build,Ship and Run Any App,Anywhere,也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及其运行环境能够做到一次封装,到处运行。
Linux 容器技术的出现就解决了这样一个问题,而 Docker 就是在它的基础上发展过来的。将应用运行在 Docker 容器上面,而 Docker 容器在任何操作系统上都是一致的,这就实现了跨平台、跨服务器。只需要一次配置好环境,换到别的机子上就可以一键部署好,大大简化了操作
解决了运行环境和配置问题软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术
1.2 Docker能干什么?
1.2.1以前的虚拟化技术
虚拟机(virtual machine)就是带环境安装的一种解决方案。
它可以在一种操作系统里面运行另一种操作系统,比如在Windows 系统里面运行Linux 系统。应用程序对此毫无感知,因为虚拟机看上去跟真实系统一模一样,而对于底层系统来说,虚拟机就是一个普通文件,不需要了就删掉,对其他部分毫无影响。这类虚拟机完美的运行了另一套系统,能够使应用程序,操作系统和硬件三者之间的逻辑不变。
虚拟机的缺点:
- 资源占用多
- 冗余步骤多
- 启动慢
1.2.2 容器虚拟化技术
由于前面虚拟机存在这些缺点,Linux 发展出了另一种虚拟化技术:Linux 容器(Linux Containers,缩写为 LXC)。 Linux 容器不是模拟一个完整的操作系统,而是对进程进行隔离。有了容器,就可以将软件运行所需的所有资源打包到一个隔离的容器中。容器与虚拟机不同,不需要捆绑一整套操作系统,只需要软件工作所需的库资源和设置。系统因此而变得高效轻量并保证部署在任何环境中的软件都能始终如一地运行。
比较了 Docker 和传统虚拟化方式的不同之处:
- 传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;
- 而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便。
- 每个容器之间互相隔离,每个容器有自己的文件系统 ,容器之间进程不会相互影响,能区分计算资源。
1.2.3 实际的运行
Docker作为开发人员需要掌握,作为运维人员
必须掌握。 一次构建,随处运行
- 更快速的应用交付和部署
- 更便捷的升级和扩缩容
- 更简单的系统运维
- 更高效的计算资源利用
1.3 相关资源
1.4 Docker安装
1.4.1 Docker安装的前提环境
CentOS Docker 安装 Docker支持以下的CentOS版本: CentOS 7 (64-bit) 8 CentOS 6.5 (64-bit) 或更高的版本
前提条件 目前,CentOS 仅发行版本中的内核支持 Docker。 Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。 Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。 查看自己的内核 uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。
1.4.2 Vagrant虚拟机环境
Docker安装在虚拟机上,我们可以通过VMWare来安装,但是通过VMWare安装大家经常会碰到网络ip连接问题,为了减少额外的环境因素影响,Docker内容的讲解我们会通过VirtualBox结合Vagrant来安装虚拟机
VirtualBox官网:https://www.virtualbox.org/
Vagrant官网:https://www.vagrantup.com/
Vagrant镜像仓库:https://app.vagrantup.com/boxes/search
安装VirtualBox和Vagrant,傻瓜式安装。安装完成后需要重启计算机。
在cmd命令窗口输入vagrant
命令弹出如下内容表示 vagrant
安装成功
通过Vagrant安装虚拟机:
- 创建一个空的目录,cmd切换到该目录中,然后执行
vagrant init centos/7
会创建Vagrantfile文件 - 执行
vagrant up
第一次执行的时候会远程下相关的镜像文件,并启动虚拟机。 - 连接虚拟机通过
vagrant ssh
连接,默认的账号密码是: vagrant vagrant
网络配置**:
找到对应的Vagrantfile文件
查看当前主机给虚拟机分配的网关的网段:
所以修改后的ip为:192.168.56.10
重启测试:需要提供私钥
私钥地址:
docker介绍与安装
namespace -> docker 使用namespace来格里容器的运行环境,比如容器的文件系统、用户环境、进程
namespace -> k8s用于业务容器的隔离,把容器创建到指定的namespace,A业务与性Linux39, B业务的所有容器运行在magedu
下载镜像doecker pull
查看下载的镜像docker images
启动镜像docker start -p -it 镜像ID /bin/bash
删除镜像docker rmi 镜像ID
端口号映射docker -p 本地端口:容器端口
手动二进制安装docker:
1.下载二进制压缩包、解压后复制到/usr/bin
2.准备docker service文件
#scp /lib/systemd/system/docker/service /bin/systemd/system/docker.socket
/lib/systemd/system/containerd.service 172.31.6.102:/lib/systemd/system/
#systemctl unmask containerd
#systemctl unmask docker
#systemctl unmask docker.socket
#systemctl enable docker
#systemctl enable containerd
#systemctl start docker
#systemctl start containerd
/var/lib/docker #看公司需求,有些时候需要单独挂载一块数据盘,来单独存储容器数据
以上是关于1.Docker的介绍与安装的主要内容,如果未能解决你的问题,请参考以下文章