【Docker进阶-01】Docker隔离原理与可视化界面-Portainer

【Docker进阶-01】Docker隔离原理与可视化界面-Portainer

/etc/docker/daemon.json 是Docker的核心配置文件。

Docker架构

Docker用Go编程语言编写,并利用Linux内核的多种功能来交付其功能。 Docker使用一种称为名称空间的技术来提供容器的隔离工作区。 运行容器时,Docker会为该容器创建一组名称空间。 这些名称空间提供了一层隔离。 容器的每个方面都在单独的名称空间中运行,并且对其的访问仅限于该名称空间。

Client: 客户端;操作docker服务器的客户端(命令行或者界面)

Docker_Host:Docker主机;安装Docker服务的主机Docker_Daemon:后台进程;运行在Docker服务器的后台进程

Containers:容器;在Docker服务器中的容器(一个容器一般是一个应用实例,容器间互相隔离)

Images:镜像、映像、程序包;Image是只读模板,其中包含创建Docker容器的说明。容器是由Image运 行而来,Image固定不变。

Registries:仓库;存储Docker Image的地方。官方远程仓库地址: https://hub.docker.com/search

容器与虚拟机

Docker隔离原理

基于Linux底层

  • namespace 6项隔离 (资源隔离)
  • cgroups资源限制 (资源限制)每种子系统独立地控制一种资源;cgroup提供的主要功能如下:
    • 资源限制:限制任务使用的资源总额,并在超过这个 配额 时发出提示
    • 优先级分配:分配CPU时间片数量及磁盘IO带宽大小、控制任务运行的优先级
    • 资源统计:统计系统资源使用量,如CPU使用时长、内存用量等
    • 任务控制:对任务执行挂起、恢复等操作

可视化界面-Portainer

https://documentation.portainer.io/

Portainer社区版2.0拥有超过50万的普通用户,是功能强大的开源工具集,可让您轻松地在Docker, Swarm,Kubernetes和Azure ACI中构建和管理容器。 Portainer的工作原理是在易于使用的GUI后面隐藏使管理容器变得困难的复杂性。通过消除用户使用CLI,编写YAML或理解清单的需求,Portainer使部署 应用程序和解决问题变得如此简单,任何人都可以做到。 Portainer开发团队在这里为您的Docker之旅提供帮助;

bash 复制代码
# 服务端部署
docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v
/var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
# 访问 9000 端口即可
bash 复制代码
#agent端部署
docker run -d -p 9001:9001 --name portainer_agent --restart=always -v
/var/run/docker.sock:/var/run/docker.sock -v
/var/lib/docker/volumes:/var/lib/docker/volumes portainer/agent

只需要安装:portainer/portainer-ce即可。

相关推荐
JavaPub-rodert2 小时前
我又把自己的 Go 后台管理系统升级了一遍:文件管理、2GB 上传、私有文件预览、Docker 镜像全安排上了
开发语言·docker·golang·shiyuadmin
爱码少年2 小时前
嗯,腾讯云个人小站Docker镜像下载功能已下线,压力给到阿里云镜像站
docker
Zhu7582 小时前
在docker环境部署frp
运维·docker·容器
承渊政道6 小时前
飞牛NAS部署Immich:搭建家庭相册并实现远程访问
运维·服务器·docker·内网穿透·cpolar·nas·immich
ruofu336 小时前
如何让docker使用提前下载好的镜像,而不是在线拉取
java·spring cloud·docker
童槿顏丶20 小时前
docker自动化部署脚本
docker·eureka·自动化
GlueNa2SiO31 天前
06-Docker存储与数据持久化
笔记·学习·docker
一位正在转型AI全栈的前端工程师1 天前
前端转全栈:从 502 到 200,我的第一个 Docker+Nginx+Node.js 项目
docker·容器
jason_renyu1 天前
Linux Docker 服务管理与排查实战指南(新手速查版)
linux·docker·新手docker学习·docker日志查询·docker服务管理
童槿顏丶1 天前
Jenkins部署(Docker)
java·docker·jenkins