一、什么是Docker?
Docker 是一个开源的容器化工具,允许应用程序在容器中运行,以便更高效地部署、运行和管理应用程序。通过 Docker,开发人员可以将应用程序和其所需的依赖项打包到一个可移植的容器中,使其能够在任何地方运行,无论是开发、测试、生产环境,或者是虚拟机、云服务或本地计算机。Docker 通过其轻量级的容器技术实现了高效的资源利用和快速部署,同时还具有可移植性、可扩展性和安全性等优点。因此,Docker 是现代应用程序开发和部署领域的重要工具。
二、Docker与传统虚拟化的区别
Docker和传统虚拟化的区别主要在以下几个方面:
-
虚拟化技术的本质不同:传统虚拟化技术通过虚拟出一台完整的计算机,包括虚拟化处理器、虚拟化内存、虚拟化硬盘等资源。而Docker是基于操作系统级别的虚拟化技术,只虚拟化出一个应用程序运行所需要的运行环境,如进程空间、文件系统、网络等资源。
-
资源利用率不同:传统虚拟化需要为每个虚拟机分配一定的计算资源和内存空间,资源利用率较低。而Docker共享主机的操作系统和内核,可以在同一个主机上运行多个Docker容器,资源利用率更高。
-
系统启动时间不同:传统虚拟化需要启动和运行一个完整的虚拟机操作系统,需要较长的启动时间。而Docker容器只需要运行一个应用程序所需的运行环境,启动速度更快。
-
安全性不同:传统虚拟化技术的每个虚拟机都有一套完整的操作系统和应用程序,安全性相对较高。而Docker容器共享同一个操作系统和内核,容器之间可能存在相互影响的安全隐患。
总体来说,Docker提供了更轻量级、更快速、更高效的应用程序虚拟化解决方案,适合于构建、发布和运行分布式应用程序。而传统虚拟化技术适用于需要完全隔离的应用程序和安全环境,例如数据库和安全应用程序。
三、安装部署Docker
1. 配置Docker需要linux3.10以上内核版本
uname -r
2.配置网络yum源
在mirrors.aliyun.com网址中找到centos,选择centos7,复制wget命令开头
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
3.安装Docker
在mirrors.aliyun.com网址中找到docker-ce这一项,后安装要求安装即可
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start
4.查看Docker状态
systemctl status docker
四、Docker常用命令
1.查看正在运行的容器
docker ps
查看正在运行的容器
docker ps -a
查看所有容器(包括已停止的容器)
2.查看有哪些镜像
docker images
查看镜像
3.下拉镜像
docker pull
下拉镜像
如:下拉一个nginx:1.20版本的
docker pull Nginx:1.20
4.删除容器
删除容器的命令是
docker rm -f nginx:1.20/或停止运行的容器名
5.删除镜像
docker images
查看所有镜像
docker rmi nginx:1.20
使用rmi命令加上 nginx和版本号
6.运行镜像
docker run -d -p --name xxxxx 80:80 Nginx:1.20
docker运行nginx1.20版本,起名:xxxxx,容器里nginx端口80映射到主机80端口
也可以使用-v 把容器里面的一些重要的东西给挂载出去,这样不容易出想问题