目录
1.1准备docker-compose.yml文件配置文件(内容详解)
编辑1.3进入cloud-demo目录下启动docker-compose
前言:本篇是针对讲解Docker的使用步骤和Dokcer能帮助我们完成什么样的需求,所以将会通过实例进行推动讲解,让内容不显空洞, 同时提供案例,方便读者更好掌握与理解
为什么需要使用Docker?使用Docker有什么好处?Docker和虚拟机有什么不同如何解决不同的运行系统环境的问题?
问题一:
一般我们在进行大型的项目部署时,通常会遇到因为大型项目组件多,运行环境复杂、依赖关系复杂、容易出现兼容性问题;同时在进行项目开发的过程中也可能因为项目的开发环境变更(比如开发环境、测试环境、生产环境)导致出现的各种兼容性问题
问题二:
而Dokcer通过将项目中的依赖(如Node.js、redis、Mysql等)的函数库、依赖、配置及其应用通过打包,形成可移植镜像,将每个应用放到一个隔离容器中进行单独运行,使用沙箱机制,相互隔离就解决了项目依赖兼容问题。
同时Docker镜像中包含完整运行环境,包括系统函数库,仅依赖系统的Linux内核,因此可以在任意Linux操作系统上运行
问题三:
关于第三个问题我们需要知道docker封装的函数库其实封装的库函数是可以直接调用Linux内核的函数,所以docker可以运行在linux的不同版本中(如ubuntu、centos)
同时Docker是一个CS架构程序,由两部分组成:
- 服务端(server):Docker守护进程,负责处理Docker指令,管理镜像、容器等
- 客户端(client):通过命令或RestAPI向Docker服务端发送指令。可以在本地或远程向服务端发送指令。
而虚拟机(virtual machine)是在操作系统中模拟硬件设备,然后运行另一个操作系统,比如在 Windows 系统里面运行 Ubuntu 系统,这样就可以运行任意的Ubuntu应用了。
所以docker和虚拟机的区别如下
- docker是一个系统进程;虚拟机是在操作系统中的操作系统
- docker体积小、启动速度快、性能好;虚拟机体积大、启动速度慢、性能一般
那么什么是镜像什么又是容器呢?
镜像:Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。容器:镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。
注意:一个镜像可以对应多个容器
一、在Linux虚拟机中安装Docker
首先需要大家虚拟机联网,安装yum工具(如果虚拟机无法联网和yum无法正常使用可以参考我的另一篇博客(CentOS7--IP地址初始化失败、配置静态ip地址后dns解析错误、yum无法使用,yum镜像问题---超详细解决方法-CSDN博客)
第一步安装yum工具
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-broken
第二步更新本地docker-ce的镜像源,提高下载速度(如果已经配置则可以跳过)
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repoyum makecache fast
第三步安装docker-ce(社区免费版本)
yum install -y docker-ce
二、Docker基本操作指令讲解以及使用
镜像docker操作有哪些?
- docker images #查看已拉取镜像
- docker rmi #删除镜像
- docker pull #拉取镜像