docker(1) |
您所在的位置:网站首页 › 虚拟机和镜像 › docker(1) |
目录 docker是什么 为什么选择Docker docker与虚拟机的区别 Docker 组件 Docker镜像 容器 仓库 docker部署 安装docker 基本命令操作 docker是什么Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 为什么选择Docker相比传统虚拟化有许多优势如: (1)更高的利用系统资源。 (2)更快速的启动时间 (3)一致的运行环境 (4)持续交付和部署 (5)更轻松的迁移 (6)更轻松的维护和扩展 docker与虚拟机的区别1、docker启动快速属于秒级别,而虚拟机通常需要几分钟去启动; 2、性能损耗不同,docker需要的资源更少; 3、隔离性不同,docker属于进程之间的隔离,隔离性较弱,而虚拟机可以实现系统级别的隔离。 Docker 组件 Docker镜像镜像是构建Docker的基石。用户基于镜像来运行自己的容器。镜像也是Docker生命周期中的“构建”部分。镜像是基于联合文件系统的一种层式结构,由一系列指令一步一步构建出来。例如: 添加一个文件; 执行一个命令; 打开一个窗口 也可以将镜像当作容器的“源代码”。镜像体积很小,非常“便携”,易于分享、存储和更新。 镜像可以被创建、启动、关闭、重启以及销毁。 Docker的镜像机制是有层次感的,一个镜像可以放到另一个镜像的顶部。位于下端的为父镜像,以此类推;最底部的镜像可称为基础镜像。 容器Docker可以帮助你构建和部署容器,你只需要把自己的应用程序或者服务打包放进容器即可。容器是基于镜像启动起来的,容器中可以运行一个或多个进程。我们可以认为,镜像是Docker生命周期中的构建或者打包阶段,而容器则是启动或者执行阶段。 所以Docker容器就是: 一个镜像格式; 一些列标准操作; 一个执行环境 仓库Docker用Registry来保存用户构建的镜像。Registry分为公共和私有两种。Docker公司运营公共的Registry叫做Docker Hub。用户可以在Docker Hub注册账号,分享并保存自己的镜像(说明:在Docker Hub下载镜像巨慢,可以自己构建私有的Registry)。 用户也可以在Docker Hub上保存自己的私有镜像。https://hub.docker.com/ docker部署repo源写好,选用阿里的,速度会比官方快很多 [root@k8s1 ~]# vim /etc/yum.repos.d/docker.repo [docker] name=docker-ce baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable gpgcheck=0 [centos] name=extras baseurl=https://mirrors.aliyun.com/centos/7/extras/x86_64 gpgcheck=0 安装docker[root@k8s1 yum.repos.d]# yum install -y docker-ce 开机自启 [root@k8s1 yum.repos.d]# systemctl enable --now docker 如果docker info出现警告,下面解决 [root@k8s1 ~]# vim /etc/sysctl.d/docker.conf net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-ip6tables=1 生效,列出docker的信息 [root@k8s1 yum.repos.d]# sysctl --system [root@k8s1 yum.repos.d]# docker info 基本命令操作查询镜像 [root@k8s1 ~]# docker search yakexi007 NAME DESCRIPTION STARS OFFICIAL AUTOMATED yakexi007/game2048 0 yakexi007/mario 0 yakexi007/myapp 0 yakexi007/nginx 0 yakexi007/busyboxplus 0 yakexi007/base-debian10 0 yakexi007/base-debian11 0 yakexi007/webserver 0 yakexi007/trivy-k8s-webhook 0 拉取镜像 [root@k8s1 ~]# docker pull yakexi007/game2048 运行容器 [root@k8s1 ~]# docker run -d --name demo -p 80:80 yakexi007/game2048 -d :打入后台运行 -p: 端口映射 查看容器详情 [root@k8s1 ~]# docker inspect demo 测试:使用浏览器访问 删除容器 [root@k8s1 ~]# docker rm -f demo |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |