docker(1)

您所在的位置:网站首页 虚拟机和镜像 docker(1)

docker(1)

2023-06-26 01:02| 来源: 网络整理| 查看: 265

目录

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