网站建设资料百度云,电商app开发公司,营销必备十大软件,中医网站风格docker是什么#xff1f;
docker是一个go语言开发的应用容器引擎。
docker的作用#xff1f;
①运行容器里的应用#xff1b;
②docker是用来管理容器和镜像的一种工具。
#容器 与 虚拟机 的区别#xff1f;
容器虚拟机所有容器共享宿主机内核每个虚拟机都有独立的操…docker是什么
docker是一个go语言开发的应用容器引擎。
docker的作用
①运行容器里的应用
②docker是用来管理容器和镜像的一种工具。
#容器 与 虚拟机 的区别
容器虚拟机所有容器共享宿主机内核每个虚拟机都有独立的操作系统和内核使用namespace隔离资源使用cgroup限制资源的最大使用量完全隔离每个虚拟机都有独立的硬件资源秒级启动速度分钟级启动速度容器相当于宿主机的进程性能几乎没有损耗需要hypervisor虚拟机管理程序对主机资源虚拟访问至少有20~50%资源损耗一台主机能够支持成千上百个容器一台主机只能支持最多几十台虚拟机
docker三个核心概念
镜像 镜像是创建容器的基础就是一个只读的模板文件里面包括容器里的应用程序所需要的所有内容包括程序代码文件配置文件运行环境库文件等
容器 容器就是用镜像运行的实例容器可以被创建、启动、停止、删除每个容器默认是相互资源隔离的
仓库 仓库就是用来保存镜像的地方有公有仓库和私有仓库。
docker的安装过程
①tar zxvf docker-19.03.9.tgz mv docker/* /usr/bin
②cat /usr/lib/systemd/system/docker.service EOF [Unit] DescriptionDocker Application Container Engine Documentationhttps://docs.docker.com Afternetwork-online.target firewalld.service Wantsnetwork-online.target
[Service] Typenotify ExecStart/usr/bin/dockerd ExecReload/bin/kill -s HUP $MAINPID LimitNOFILEinfinity LimitNPROCinfinity LimitCOREinfinity TimeoutStartSec0 Delegateyes KillModeprocess Restarton-failure StartLimitBurst3 StartLimitInterval60s
[Install] WantedBymulti-user.target EOF ③安装依赖包 yum install -y yum-utils device-mapper-persistent-data lvm2
设置阿里云镜像源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装 Docker-CE并设置为开机自动启动 yum install -y docker-ce docker-ce-cli containerd.io systemctl start docker.service systemctl enable docker.service
docker镜像操作命令
搜索镜像docker search 镜像关键词 拉取镜像docker pull 镜像 #如不指定标签则使用 :latest 做默认标签 查看镜像有哪些docker images 修改标签docker tag 旧镜像名:标签 新镜像名:标签 删除镜像docker rmi 镜像名:标签 查看镜像详细信息docker inspect 镜像名:标签 导出镜像 save -o 镜像文件 镜像名:标签 导入镜像 load -i 镜像文件 登录docker仓库login #默认登录公有仓库 镜像加速sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json -EOF { registry-mirrors: [https://f5rz8yx3.mirror.aliyuncs.com] } EOFsudo systemctl daemon-reloadsudo systemctl restart docker上传镜像push 仓库/镜像名:标签
docker容器操作命令
创建容器docker create [–name 容器名] -it 镜像:标签 启动容器docker start 容器名/容器ID 查看容器docker ps [-a] [-q] 停止容器docker stop 容器名/容器ID #kill -15 杀死容器docker kill 容器名/容器ID #kill -9 启动状态下才可以 删除容器rm 容器名/容器ID docker rm $(docker ps -a -q) 批量删除非运行中的容器 创建并运行容器docker run -itd [–name 容器名] [–rm] 镜像:标签 [启动容器的命令]
-i 选项表示让容器的输入保持打开 -t 选项表示让 Docker 分配一个伪终端;
–rm:如果停止这个容器就删除。
docker run 来创建容器时 Docker 在后台的标准运行过程是 1检查本地是否存在指定的镜像。当镜像不存在时会从公有仓库下载 2利用镜像创建并启动一个容器 3分配一个文件系统给容器在只读的镜像层外面挂载一层可读写层 4从宿主主机配置的网桥接口中桥接一个虚拟机接口到容器中 5分配一个地址池中的 IP 地址给容器 6执行用户指定的应用程序执行完毕后容器被终止运行。
查看容器的详细信息docker inspect 容器名/容器ID 进入容器docker exec -it 容器名/容器ID bash/sh 复制容器内容到宿主机cp 容器ID:文件绝对路径 宿主机目录/文件
复制宿主机内容到容器cp 宿主机目录/文件 容器ID:文件绝对路径
容器导出docker export 容器ID/名称 文件名
docker export 2592d3fad0fb centos7.tar
docker export -o centos7.tar 2592d3fad0fb
容器导入cat 文件名 | docker import – 镜像名称:标签 cat centos7.tar | docker import - centos7:test #导入后会生成镜像但不会创建容器
docker import centos7.tar – centos7:test