• 不重启docker进程,重新reload加载配置


    因为运行了多个容器,重启docker进程时会让所有容器重启,时间不能等;有没有类似nginx一样的reload机制呢?

    linux 信号认知:SIGHUP

    本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联。
    登录Linux时,系统会分配给登录用户一个终端(Session)。在这个终端运行的所有程序,包括前台进程组和后台进程组,一般都属于这个 Session。当用户退出Linux登录时,前台进程组和后台有对终端输出的进程将会收到SIGHUP信号。这个信号的默认操作为终止进程,因此前台进 程组和后台有终端输出的进程就会中止。不过可以捕获这个信号,比如wget能捕获SIGHUP信号,并忽略它,这样就算退出了Linux登录,wget也 能继续下载。

    重点来了:

    此外,对于与终端脱离关系的守护进程,这个信号用于通知它重新读取配置文件。

    使用kill测试

    ps -ef|grep dockerd
    kill -SIGHUP $(pidof dockerd) 
    
    • 1
    • 2

    – 使用kill命令,发送SIGHUP信号给dockerd ,dockerd收到信号后会reload配置;

    – SIGHUP对应信号编码1,可简化为:

    kill -1 $(pidof dockerd) 
    
    • 1

    测试结果

    在这里插入图片描述

    使用docker info查询或者相关的配置的操作显示:
    发现容器的状态时间不变,但新的配置已经添加;


    另常用的kill另一个信号是:

    kill -9 $pid
    
    • 1

    对应的信号是:
    SIGKILL
    用来立即结束程序的运行. 本信号不能被阻塞、处理和忽略。如果管理员发现某个进程终止不了,可尝试发送这个信号。

  • 相关阅读:
    神经网络前向和后向传播推导(二):全连接层
    WMI 监控
    Git远程库代码回退
    CSS - 响应式布局(一)媒体查询
    Mybatis如何使用分页插件pageHelper
    大佬神作!Spring Security从应用到源码,这份手册都讲全了,已三刷
    资深java面试题及答案整理(五)
    论文学习——降雨场次划分方法对降雨控制率的影响分析
    01程序执行原理
    C语言:单词的逆序打印
  • 原文地址:https://blog.csdn.net/atzqtzq/article/details/125462973