1.docker的简介
1.1docker是什么
用一句话来说docker就是一个新一代虚拟化技术
Docker是一种开源的平台,用于开发、交付和运行应用程序。它允许开发人员将应用程序和它们的依赖打包在一个容器中,然后部署到任何支持Docker的环境中。Docker的主要特点包括高效的资源利用、快速部署和可移植性。通过使用Docker,开发人员可以更轻松地构建、测试和部署应用程序,同时提高应用程序的可移植性和可靠性。
1.2docker有什么用
应用程序部署:Docker可以让开发人员将应用程序及其所有依赖项打包成一个容器,然后通过Docker镜像进行部署。这样可以确保应用程序在不同环境中的一致性,并且更容易进行版本控制和升级。
环境隔离:Docker使用容器来隔离不同的应用程序和服务,每个容器都有自己的文件系统、进程和网络。这种隔离性可以确保应用程序之间互不干扰,同时提供更高的安全性。
快速开发和测试:Docker可以快速创建、启动和停止容器,使开发人员可以更快地进行应用程序的开发和测试。开发人员可以使用容器来模拟整个应用程序的运行环境,以便更容易地调试和修复问题。
资源利用和扩展性:Docker可以有效地利用系统资源,因为容器共享操作系统内核,并且可以在单个主机上运行多个容器。此外,Docker还支持快速横向扩展,可以轻松地创建和部署多个相同的容器来处理负载均衡。
协作与共享:通过Docker镜像,开发人员可以将整个应用程序及其所有依赖项打包成一个可共享的组件。这使得开发人员可以更轻松地与团队合作、共享代码和环境,并且可以将应用程序轻松地部署到不同的环境中。
1.3docker的优缺点
优点:
资源利用率高:Docker使用操作系统级虚拟化,可以在物理机上并行运行多个容器,并且容器可以共享宿主机的操作系统内核。这种共享机制使得容器的启动和运行速度更快,同时占用更少的系统资源。
可移植性好:Docker容器可以在任何支持Docker的环境中运行,包括物理服务器、虚拟机和云平台。这意味着开发人员可以在开发和测试环境中构建容器,然后将其部署到生产环境中,无需担心环境差异导致的错误。
简化部署和维护:Docker将应用程序及其所有依赖项打包在一个容器中,这样可以大大简化部署和维护的过程。开发人员只需将容器从一个环境复制到另一个环境,就可以轻松地部署应用程序,而无需关心配置和依赖项的冲突。
环境隔离和安全性强:Docker提供了容器级别的环境隔离,每个容器都有自己的文件系统、进程和网络。这种隔离性可以确保应用程序之间互不干扰,并提供更高的安全性,即使一个容器受到攻击,其他容器和系统也不会受到影响。
缺点:
相对较高的学习曲线:使用Docker需要一定的学习和了解Docker的概念、命令和工作原理。对于相对新手的开发人员来说,可能需要一段时间来适应和掌握Docker的使用。
容器化需要额外的开销:将应用程序容器化通常需要进行一些额外的工作,如编写Dockerfile、构建和更新容器镜像等。这些额外的开销可能会增加开发和部署的复杂性。
容器化不适用于所有应用程序:虽然Docker可以容器化大多数应用程序,但并不是所有应用程序都适合容器化。一些应用程序可能依赖于特定的硬件、操作系统或网络设置,无法轻松容器化。
2.docker的安装
首先打vm虚拟机
再打开我们的MobaXterm.exe 进行连接
下载我们的插件
安装我们的工具包
设置yum源
下载安装docker
启动docker并设置开机自启动
最后检查是否安装成功
配置镜像
进入我们的阿里云官方:阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台
这就已经安装好了
3.docker镜像命令
3.1下方图拉取(下载)mysql
命令:docker pull mysql
3.2删除
查看当前服务器已下载的:docker images
删除:docker rmi IMAGE ID或名称
强制删除:docker rmi -f IMAGE ID或名称
2.3 Docker容器命令
为了测试,在Linux的Centos7中再安装一个Centos7
命令:docker pull centos:7
这时候下载的centos7为一个容器
我们可以去启动它
创建一个容器并进入该容器: docker run -it --name mycentos02 IMAGE ID
解释:
1.docker run: 这是Docker命令的基础,用于从镜像启动新容器。
-it: 这是两个标志的组合。
2.-i 或 --interactive: 保持容器的标准输入(STDIN)开启,即使不连接到容器。
3.-t 或 --tty: 为容器分配一个伪终端(pseudo-TTY),通常用于交互式会话
4.--name mycentos02: 这个标志用于给新创建的容器指定一个名称。在这个例子中,容器的名称是mycentos02。如果不指定这个标志,Docker会自动为容器生成一个名称。5.IMAGE ID: 这是你想要从中创建容器的Docker镜像的标识符。通常,你会使用docker images命令来查看可用的镜像及其ID,然后选择你想要使用的镜像的ID
综合起来,docker run -it --name mycentos02 IMAGE ID 命令会创建一个名为mycentos02的新容器,该容器基于指定的镜像ID,并且具有交互性和伪终端。一旦容器启动,你就可以通过控制台与容器中的进程进行交互(切换版本),如下
docker rmi 删除镜像