docker容器的创建及工作原理

1.docker简介

docker是管理容器的引擎,为应用打包、部署平台

2.容器工作的基本原理

虚拟机和容器

虚拟机,重开一个操作系统,再构建应用 ,完全隔离 安全性好,占内存大,分钟极,运行密度一般十几个
容器:直接共享宿主机,不重开操作系统 ,安全隔离,基本无损耗 。性能更加高效,灵活迁移,秒极,快速,单机支持上千容器,进程

容器是如何工作的

在这里插入图片描述

client
host(后台(容器引擎):管理服务器(管理镜像(镜像可以从仓库下载)和容器))
仓库(registry):

客户端向docker引擎提交一个任务(eg:run运行),检测本地镜像仓库,如果没有,从仓库下载,然后用镜像创建相应的容器
在本地,多个容器是可以共用一个镜像的,(类似虚拟机一个母盘可以创建多个虚拟机)镜像是只读的,容器是读写层,
仓库:存放镜像,如果本地没有。

3.容器的创建

3.1配置软件仓库

阿里云

[root@server1 yum.repos.d]# cat docker.repo
[docker]
name=docker-ce
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/
gpgcheck=0

仅用docker-ce源,去安装docker-ce的时候还存在依赖性,发现所有的依赖性都来自 centos

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e ‘/mirrors.cloud.aliyuncs.com/d’ -e ‘/mirrors.aliyuncs.com/d’ /etc/yum.repos.d/CentOS-Base.repo
在这里插入图片描述

vim CentOS-Base.repo
:%s/$releasever/7/g

3.1docker-ce安装.启动

yum install -y docker-ce
systemctl enable --now docker

3.2创建

docker info

在这里插入图片描述
处理警告信息
[root@server1 yum.repos.d]# sysctl net.bridge.bridge-nf-call-iptables
net.bridge.bridge-nf-call-iptables = 1
/etc/sysctl.d/ 存放了此值

vim   /etc/sysctl.d/docker.conf
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1

sysctl --system 使生效

docker0 接口
在这里插入图片描述
下载镜像
1.
软件包的形式,做地址映射
[root@server1 ~]# ls
mario.tar
[root@server1 ~]# docker load -i mario.tar 软件包,地址映射
2. 从仓库中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ninimino/article/details/113139805