千家信息网

python中docker系统管理的示例分析

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章给大家分享的是有关python中docker系统管理的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。(一)什么是docker hubDocker Hub是一
千家信息网最后更新 2025年12月01日python中docker系统管理的示例分析

这篇文章给大家分享的是有关python中docker系统管理的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

(一)什么是docker hub
  • Docker Hub是一个仓库
    >https://hub.docker.com/
    >如果页面打不开,那就需要×××。

仓库是集中存放镜像文件的场所。
仓库为公开仓库(Public)和私有仓库(Private)两种形式。
最大的公开仓库就是https://hub.docker.com/
用户也可以在本地网络搭建私有仓库。
用户可以选择性的将镜像上传到私有和公有仓库中。其他用户使用镜像只需要pull命令,上传是通过push命令

  • 注意
    >下载不需要账号,上传是需要进行账号注册的

vagrant 安装docker

源码:https://github.com/limingios/dockerpython.git (「docker实战篇」python的docker-docker系统管理-基础概念(27))

vagrant的使用参见
mac 安装vgarant :https://idig8.com/2018/07/29/docker-zhongji-07/
window安装vgarant:https://idig8.com/2018/07/29/docker-zhongji-08/

  • 通过vagrant 安装centos7

  • Vagrantfile

# -*- mode: ruby -*-# vi: set ft=ruby :Vagrant.require_version ">= 1.6.0"boxes = [    {        :name => "docker-vagrant-centos",        :mem => "2048",        :cpu => "2"    }]Vagrant.configure(2) do |config|  config.vm.box = "centos/7"  boxes.each do |opts|    config.vm.define opts[:name] do |config|      config.vm.hostname = opts[:name]      config.vm.provider "vmware_fusion" do |v|        v.vmx["memsize"] = opts[:mem]        v.vmx["numvcpus"] = opts[:cpu]      end      config.vm.provider "virtualbox" do |v|        v.customize ["modifyvm", :id, "--memory", opts[:mem]]        v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]      end      config.vm.network :private_network, auto_config: true, ip: "192.168.70.100", bridge:"ens1f0", bootproto: "static", gateway: "192.168.70.1"    end  end  config.vm.provision "shell", privileged: true, path: "./setup.sh"end
  • setup.sh

#/bin/shsudo yum install -y yum upgrade yum-utils device-mapper-persistent-data wgetsudo yum install -y net-toolssudo yum install -y curl policycoreutils openssh-server openssh-clientssudo systemctl enable sshdsudo systemctl start sshdsudo yum install -y postfixsudo systemctl  enable postfixsudo systemctl start postfixsudo firewall-cmd --permanent --add-service=httpsudo systemctl reload firewalldsudo curl -sSL https://get.docker.com/ | shsudo curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://b81aace9.m.daocloud.iosudo systemctl restart dockersudo yum -y install epel-releasesudo yum -y install python-pipsudo yum clean allsudo pip install docker-compose
  • vagrant安装命令

vagrant up

mac 安装vgarant :https://idig8.com/2018/07/29/docker-zhongji-07/
window安装vgaranthttps://idig8.com/2018/07/29/docker-zhongji-08/

系统类型IP地址节点角色CPUMemoryHostname
Centos7192.168.70.100gitlab22Gdocker-vagrant-centos

(1). 虚拟机vagrant讲述安装的步骤

vagrant up

(2).机器window/mac开通远程登录root用户下

su -# 密码vagrant#设置 PasswordAuthentication yesvi /etc/ssh/sshd_configsudo systemctl restart sshd

  • docker 登录
    >通过网页的方式登录

虚拟机linux登录docker官网,输入的是用户名和密码。不是在官网登录的邮箱

docker login

  • 搜索镜像
    >官网方式

linxu命令的方式

  • 下载镜像
    >1.先配置加速器

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.iosudo systemctl restart docker

2.下载centos镜像

#默认下载最后一个版本docker pull centosdocker images

3.才75MB的centos镜像,这是为啥啊?平时下载centos的ios都几个G,怎么可能如此的小。如果老铁是初学者肯定会问这类的问题。

  • 解释下为什么镜像如此小
    >linux操作系统是由内核空间和用户空间组成的,内核空间就是kernel,linux刚启动的时候会加载这个bootfs文件系统,之后这个bootfs会卸载掉,用户文件系统就是rootfs,包含dev,bin等目录,对于刚下载的centos这个镜像来说,底层会使用docker的内核,自己只需要提供用户空间就可以了 ,对于精简的系统用户空间可以很小,只需要包括最基本的命令和程序库就可以了,我们平时安装的centos除了最基本的还会安装很多的软件,服务,图形桌面等等,需要好几个g也不足为奇了。

  • 什么是镜像
    Docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序,库,资源,配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷,环境变量,用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。docker镜像只需要一个基础的base Image,按照需求不断的叠加就可以了。共享一份基础的。一个基础镜像出现多个容器,如果容器内的etc文件被修改,但是基础镜像的是不会被改变的。修改只会在单个的容器内。 例如要安装一个tomcat镜像,新的镜像是在基础的linux下一层一层叠加上来的。


  • Docker的copy-on-write特性

    所有的修改,添加,删除,只会发生在容器层中,镜像层都是只读的。

  • 什么是容器
    >容器是一种轻量级,可移植,自包含的软件打包技术,是一种应用程序,可以在几乎任何地方以相同的方式运行。

开发人员在自己笔记本创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机,物理放服务器或公有云主机上运行。

为什么需要容器,以及为什么被称为容器

集装箱,无论你是什么货物,钢琴,香蕉,保时捷,他都会放置在各自的集装箱里面了,它都会密封,只有到达目的地才会被打开,标准的集装箱会被高效的装卸重叠,长途运输。docker就将集装箱的思想运用在了打包软件上面。它为代码提供了容器的标准化的运输系统,docker会将任何应用打包成为一个轻依赖,可移植,自包含的容器,这个容器几乎可以运行在任何的操作系统上,其实集装箱和容器对应的单词都叫container,docker的图标就是一个鲸鱼顶着多个集装箱。

  • docker容器的优势

    容器的优势,对于开发人员来说,创建一次,可以在任何地方运行,对于运维人员来说,配置一次,可以运行所有应用。

  • docker服务

    docker最核心的后台进程,它负责响应来自Docker client的请求,然后将这些请求翻译成系统调用完成容器管理操作。该进程会在后台启动一个API Server,负责接收由Docker client发送的请求;接收到的请求将通过Docker服务内部的一个路由分发调度,再由具体的函数来执行请求。

感谢各位的阅读!关于"python中docker系统管理的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

容器 镜像 系统 用户 仓库 运行 基础 文件 集装箱 命令 空间 登录 管理 就是 方式 服务 配置 人员 内容 内核 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全专业属于什么系 可以单人生存的神奇宝贝服务器 sql数据库大小修改 app软件开发sh 网络安全隐患排查治理月报 数字媒体为什么学数据库 一梦江湖钟灵毓秀在哪个服务器 是不是计划让服务器运行下去 网络安全参会名单 空间数据库在哪设计 税务信息网络安全培训 陕西升腾服务器选择 从数据库中data数据 筑网络安全 建文明社会 交互式软件开发 外网打印服务器 河西区应用软件开发供应 中职类计算机网络技术教案 csgo选择服务器的界面不见了 国家医用耗材分类与代码数据库动态维护操作 游戏公司网络安全顾问 佛山银飞网络技术有佛山 网络安全实训项目分析报告 华为服务器型号中文名称 vivo的软件开发事情多吗 网络安全面临的主要攻击是 通信网络技术有哪些专业 如何知道公司的服务器 湖北斑马网络技术有限公司 软件开发成本估算指南
0