Docker Start命令流程分析

简介: 首先说明一下在控制台输入docker start命令后的主要流程。

首先说明一下在控制台输入docker start命令后的主要流程:

  1. postContainersStart (api/server/router/container_routes)
  2. ContainerStart (daemon/start.go)

    1. GetContainer #根据名字获取景象
    2. validateState #检查container的状态
    3. daemon.containerStart # 进行请求

      1. container.Lock() #上锁
      2. daemon.conditionalMountOnStart

        #待补充详细过程

      3. daemon.initializeNetworking #(daemon/container_operations) #初始化网络

        在这里,网络模式有containerhostdefault模式

        1. if IsContainer #如果网络模式是container,需要获取需要加入容器的网络配置
        2. if IsHost #如果网络模式是host,hostName设置成主机名字,网络配置与宿主机相同
      4. daemon.createSpec (daemon/oci_linux.go) #应该是设置具体性能配置的,比如cpu速率等
      5. daemon.getLibcontainerdCreateOptions #得到创建容器的选择,应该是启动容器时,需要在容器内执行的命令
      6. daemon.containerd.Create (libcontainerd/client_daemon) #创建啥玩意
      7. daemon.containerd.Start (libcontainerd/client_daemon) #启动啥玩意
      8. container.SetRunning #设置容器的状态为running
      9. daemon.setStateCounter #设置daemon的计数
      10. daemon.initHealthMonitor #初始化容器监控
      11. daemon.LogContainerEvent #日志记录容器启动

目录
打赏
0
0
0
0
10483
分享
相关文章
Docker run命令-p参数详解
本文介绍Docker端口映射的基础用法。通过`docker run -p <宿主机端口>:<容器端口>`实现端口映射,例如`-p 5000:80`将宿主机5000端口映射到容器80端口,外部访问宿主机5000端口时流量会转发至容器内部的80端口。示例命令中,`-d`用于后台运行,`--restart=always`确保容器自动重启,`--name`指定容器名称。部署完成后可通过`http://服务器IP地址:5000`验证服务是否正常运行。
Docker Compose--命令说明
Docker Compose--命令说明
464 30
常用的Docker命令:docker_cmd_sheet
以上就是一些常用的Docker命令,希望能帮助你更好地驾驭这个强大的工具。记住,Docker就像是一个魔法咒语,只有真正理解和熟练使用,才能发挥出它的最大魔力。
96 22
Docker 安装常用软件相关命令
本文介绍了在CentOS 7.9系统上安装Docker的详细步骤,包括添加阿里云镜像源、安装Docker及相关组件、启动服务以及配置镜像加速。同时,还展示了如何通过Docker安装MySQL 5.7版本数据库,涵盖拉取镜像、创建数据目录、运行容器及配置挂载点等操作,并提供验证安装成功的命令和截图。适合需要部署Docker与MySQL环境的用户参考。
222 5
Docker 常用命令整理
Docker 常用命令整理
110 1
Docker 入门全攻略:安装、操作与常用命令指南
Docker 的世界非常广阔,这只是一个开始,请继续探索和学习 Docker 的高级特性和最佳实践。后续也会继续更新相关的理论与实践内容。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
11月前
|
Docker 入门常用命令
Docker 入门常用命令
69 1
Docker容入门到精通——Docker常用命令
Docker容入门到精通——Docker常用命令
106 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等