????????Docker是一个开源的应用容器引擎,它让开发者可以将他们的应用及其依赖打包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
????????Docker的优点包括简化流程、避免选择恐惧症和节省开支。使用Docker可以更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。Docker的架构包括Docker daemon(Docker守护进程),这是一个运行在宿主机(DOCKER-HOST)的后台进程。
????????Docker进程和普通的进程没有任何区别,它就是一个普通的应用进程,不过是用来操作镜像文件的。所以Docker进程+构建的应用镜像文件就等于Docker容器。
????????Docker镜像是一个只读的模板,包含了运行环境、文件系统、应用程序和依赖等。镜像可以用来创建Docker容器,一个镜像可以被多个容器同时使用。
例如:一个镜像可以包含一个完整的 ubuntu 操作系统环境,里面仅安装了 Apache 或用户需要的其它应用程序。
镜像可以用来创建 Docker 容器。
Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载 一 个已经做好的镜像来直接使用。
????????容器是基于镜像创建的一个可运行的实例,它是一个独立且隔离的运行环境。容器可以被快速创建、启动、停止、删除,并且具有轻量级、可移植性和可复用性等特点。可以把容器看做是一个简易版的Linux环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。
仓库是集中存放镜像文件的场所。
有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上 往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的 标签(tag)。
仓库分为公开仓库(Public)和私有仓库(Private)两种形式。
最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。 当然,用户也可以在本地网络内创建一个私有仓库。 当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库,这样下次在另外一 台 机器上使用这个镜像时候,只需要从仓库上 pull 下来就可以了。
????????仓库是用来存储和分享镜像的地方,可以分为本地仓库和远程仓库两种类型。本地仓库存储在本地机器上,而远程仓库则可以通过网络访问。仓库中的每个镜像都有一个唯一的标识符,称为镜像标签(Image Tag),可以用来唯一标识和区分不同的镜像版本。
Docker 利用容器来运行应用。
容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。
可以把容器看做是一个简易版的 Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等) 和运 行在其中的应用程序。
在选择服务器操作系统时,Windows附带了许多您需要付费的功能。
Linux是开放源代码,可让用户免费使用。
????????Windows服务器和Linux服务器在安装Docker时存在一些差异,主要原因在于它们使用的操作系统不同。
????????在Windows服务器上安装Docker,通常是通过Docker Desktop for Windows软件来实现的。Docker Desktop for Windows提供了一个图形化界面,可以方便地安装、管理和部署Docker容器。安装过程比较简单,只需要下载并安装Docker Desktop for Windows,然后按照提示进行操作即可。
????????而在Linux服务器上安装Docker,需要根据具体的发行版和版本号进行操作。一般来说,可以使用系统自带的包管理器(如apt、yum等)来安装Docker。例如,在Ubuntu上安装Docker,可以使用以下命令:
sudo apt-get update sudo apt-get install docker.io
在CentOS上安装Docker,可以使用以下命令:
sudo yum install docker
安装完成后,可以通过运行
sudo yum install docker
命令来检查Docker是否成功安装并查看相关信息。
- Linux是开源的,因此是免费的。Web主机仅需要支付技术支持即可安装和维护程序(如果需 要)。服务器提供商不需要将额外的成本转嫁给客户。另一方面,对于Windows服务器,公司通常 必须为操作系统和定期使用许可证付费。
- Linux服务器及其运行的应用程序通常设计为精益运行,因此通常使用较少的计算机资源。好处是 程序员可以“即时”修改Linux服务器和软件,而无需重新启动,这在Windows环境中是不可能的。 Microsoft Windows服务器在多数据库任务下趋向于变慢,崩溃的风险更高。
- Linux比Windows更安全。尽管没有哪个系统能幸免于黑客和恶意软件的攻击,但是Linux往往是 一个低调的目标。由于Windows运行着世界上大多数软件,因此,黑客们渴望获得低挂的果实 Windows。
Docker支持运行CentOS版本:CentOS 7.X
内核版本检查: uname -r
卸载可能存在的旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
旧版本的docker叫做docker或者docker-engine,如果有安装,先卸载其以及其依赖,新版本的
docker叫做docker-ce
docker-ce(社区版,免费)
docker-ee(专业版,收费)
安装必要的系统工具: yum install -y yum-utils device-mapper-persistent-data lvm2
添加docker-ce安装源:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
配置阿里云Docker Yum源:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新yum缓存:
yum makecache fast
yml.pid占用: -- rm -f /var/run/yum.pid
安装docker-CE: yum -y install docker-ce
1)默认安装的是最新版本的稳定版
2)查看版本列表请使用如下命令:yum list docker-ce --showduplicates | sort -r
3)如果要安装特定版本的docker-CE请使用如下命令格式: yum install docker-ce-
- 镜像操作:首先需要从Docker仓库中获取镜像,可以使用
docker pull
命令从远程仓库下载镜像。如果本地仓库中没有需要的镜像,则可以通过docker search
命令搜索并下载。- 容器操作:在获取镜像后,可以使用
docker run
命令创建并启动容器。容器可以用来运行应用程序,并且每个容器都是相互隔离的。可以通过docker ps
命令查看正在运行的容器,使用docker stop
和docker start
命令来停止和启动容器。- 镜像和容器的管理:Docker还提供了其他一些命令来管理镜像和容器,例如
docker image
命令可以用来管理本地镜像,docker container
命令可以用来管理本地容器。- 仓库管理:如果需要将本地镜像上传到远程仓库,可以使用
docker push
命令。同时,也可以使用docker tag
命令给本地镜像添加标签,以便于管理和区分不同的镜像版本。