【云原生】1.2 Docker基本概念(含 Docker 安装)

简介: 我们可以看见虚拟机技术太过于重量级了,所以Docker 推出一项新技术—— 容器化技术(特点:基础镜像MB级别、创建简单、隔离性强、启动速度秒级、移植与分享方便)


一、Docker基本概念

1、统一标准

✅应用构建:

我们用不同的语言(eg:Java、C++、JavaScript、Python 等等)打包成不同的软件包,在不同的环境下运行都是不一样的。可能会导致问题也不同(举个例子:我用 java 写了一个程序,但放到了另外一台电脑点击 .exe 就运行不了了),所以无论是啥 .exe,我们需要统一的包,这是要使用 docker build ,把它打成统一的包,那么这个包就叫——镜像

✅应用分享:

我们将做好的软件包,放到一个统一指定的地方(docker hub),需要的话我们直接就去用,(这有点像我们安卓手机的市场应用)

✅应用运行:

这是我们有了软件包,我们直接点击  .exe 或者 docker run 就可以直接运行(eg:C ++ 运行先编译后才运行,我们这大大减少了时间)

总结一句话:我们所有的软件打包成统一的镜像,直接 docker run 运行,或者在 docker hub 上面下载下来使用。

Docker的出现开启了个时代——容器化时代

2、资源隔离

在之前我们安装某一应用(假设应用占用 6 个 G 的大小)我们的配置 64 G ,突然有一天内存泄漏 64G 直接满了,其他应用可能就会被挤下去了,所以为了安全起见,就产生了资源隔离。

💕虚拟化技术:

假设虚拟机 AppA、AppB、Appc都占 6 个 G,那个在内存泄漏的情况下,怎样都不会超过 6 个 G,这种技术叫做虚拟化技术。但用过虚拟机的朋友都知道虚拟机的通病(基础镜像GB级别、创建使用稍微复杂、隔离性强、启动速度慢、移植与分享不方便等缺点)

image.png

image.png


我们可以看见虚拟机技术太过于重量级了,所以 Docker 推出一项新技术—— 容器化技术(特点:基础镜像MB级别、创建简单、隔离性强、启动速度秒级、移植与分享方便)

image.png

image.gif

二、Docker 的安装

如何用 electerm 远程连接云服务器,这里推荐这位大佬的文章

(这里介绍在 centos 下安装 docker,其他系统安装参考Install Docker Engine on CentOS | Docker Documentation

如何你之前安装过老版本的 docker,需要卸载的话可以使用

yum remove docker

image.gif

image.png

image.gif

✨然后我们配置 yum 源

yum install -y yum-utils

image.gif

✨ 再添加 docker 的安装原地址

yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

image.gif

image.png

✨接下来安装docker

yum install -y docker-ce docker-ce-cli containerd.io

image.gif

docker-ce :docker 社区版

docker-e :docker 企业版

docker-ce-cli:操作 docker 服务的命令行程序

containerd.io:容器化的运行环境

安静的等待安装,大概几分钟左右。

image.png

✨ 我们开始启动了

systemctl enable docker --now

image.gif

输入docker ps,如果有输出那么就安装成功了。

image.gifimage.png

现在全部就安装好了,但我们如何在 hub 里面下载东西会很慢(因为是国外的网站),所以我们这里需要配置一下,做一个镜像加速

✨配置加速

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

image.gif

image.pngimage.gif

这里我们就 docker 与加速安装好了。


相关文章
|
2天前
|
弹性计算 Ubuntu Linux
阿里云服务器一键安装Docker社区版教程,基于系统运维管理OOS
阿里云服务器一键安装Docker社区版教程,基于系统运维管理OOS自动化部署。支持Ubuntu 22.04/20.04、CentOS 7.7-7.9及Alibaba Cloud Linux 3.2104 LTS。前提条件:ECS实例需运行中且有公网。步骤:选择Docker扩展并安装,验证成功通过命令`docker -v`查看版本号。
108 78
|
16天前
|
NoSQL 关系型数据库 应用服务中间件
docker基础篇:安装tomcat
docker基础篇:安装tomcat
143 64
|
13天前
|
存储 Kubernetes 开发者
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
Docker 是一种开源的应用容器引擎,允许开发者将应用程序及其依赖打包成可移植的镜像,并在任何支持 Docker 的平台上运行。其核心概念包括镜像、容器和仓库。镜像是只读的文件系统,容器是镜像的运行实例,仓库用于存储和分发镜像。Kubernetes(k8s)则是容器集群管理系统,提供自动化部署、扩展和维护等功能,支持服务发现、负载均衡、自动伸缩等特性。两者结合使用,可以实现高效的容器化应用管理和运维。Docker 主要用于单主机上的容器管理,而 Kubernetes 则专注于跨多主机的容器编排与调度。尽管 k8s 逐渐减少了对 Docker 作为容器运行时的支持,但 Doc
77 5
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
|
5天前
|
NoSQL 关系型数据库 Redis
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
43 14
|
2天前
|
关系型数据库 MySQL 应用服务中间件
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
26 7
|
17天前
|
关系型数据库 MySQL 数据库
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
93 24
|
18天前
|
NoSQL 算法 Redis
docker高级篇(大厂进阶):安装redis集群
docker高级篇(大厂进阶):安装redis集群
81 24
|
23天前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
87 24
|
17天前
|
Ubuntu Linux Docker
Ubuntu22.04上Docker的安装
通过以上详细的安装步骤和命令,您可以在Ubuntu 22.04系统上顺利安装
222 11
|
25天前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
112 6

热门文章

最新文章