docker服务启动过程分析

news2025/1/10 3:13:49

How  docker.service start? just by ref

我们先了解docker的各个核心组件的介绍

runc:runc实现了容器的底层功能,例如创建、运行等。runc通过调用内核接口为容器创建和管理cgroup、namespace等Linux内核功能,来实现容器的核心特性。runc是一个可以直接运行的二进制程序,对外提供的接口就是程序运行时提供的子命令和命令参数。runc内通过调用内置的libcontainer库功能来操作cgroup、namespace等内核特性。

dockerd:dockerd是运行于服务器上的后台守护进程(daemon),负责实现容器镜像的拉取和管理以及容器创建、运行等各类操作。dockerd向外提供RESTful API,其他程序(例如docker客户端)可以通过API来调用dockerd的各种功能,实现对容器的操作。但时至今日,在dockerd中实现的容器管理功能也已经不多,主要是镜像下载和管理相关的功能,其他的容器操作能力已经分离到containerd组件中,通过grpc接口来调用。又被称为docker engine、docker daemon。

containerd:另外一个后台守护进程,是真正实现容器创建、运行、销毁等各类操作的组件,它也包含了独立于dockerd的镜像下载、上传和管理功能。containerd向外暴露grpc形式的接口来提供容器操作能力。dockerd在启动时会自动启动containerd作为其容器管理工具,当然containerd也可以独立运行。containerd是从docker中分离出来的容器管理相关的核心能力组件,https://www.docker.com/blog/docker-containerd-integration/和https://www.docker.com/blog/what-is-containerd-runtime/介绍了将其从docker中独立出来的原因。但是为了支持容器功能实现的灵活性和开放性,更底层的容器操作实现(例如cgroup的创建和管理、namespace的创建和使用等)并不是由containerd提供的,而是通过调用另一个组件runc来实现。

因此,我们的docker服务启动就包括启动dockerd和containerd这两个守护进程。

docker是一个cs架构,我们启动docker的服务,就是启动docker s端,而s端其实就是在启动dockerd这个进程,dockerd为我们提供手动启动debug方式,可以看到docker s端启动日志,即dockerd --debug,因此,我们只要分析这个debug日志即可了解docker服务是怎么启动的,启动日志见附录。

这里我们以docker 20为例分析一下

[root@localhost ~]# docker version 
Client: Docker Engine - Community
 Version:           20.10.18
 API version:       1.41
 Go version:        go1.18.6
 Git commit:        b40c2f6
 Built:             Thu Sep  8 23:14:08 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.18
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.6
  Git commit:       e42327a
  Built:            Thu Sep  8 23:12:21 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.8
  GitCommit:        9cd3357b7fd7218e4aec3eae239db1f68a5a6ec6
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
[root@localhost ~]# 

docker服务启动流程:

cmd/dockerd/daemon.go ------> start()

1. 启动containerd,通过查看containerd的服务文件

containerd启动过程会干啥呢?

为了解耦,containerd 将系统划分成了不同的组件,每个组件都由一个或多个模块协作完成(Core 部分),每一种类型的模块都以插件的形式集成到 Containerd 中,而且插件之间是相互依赖的,有多种类型的插件,包括 Service Plugin、Metadata Plugin、GC Plugin、Runtime Plugin 等,其中 Service Plugin 又会依赖 Metadata Plugin、GC Plugin 和 Runtime Plugin。

因此containerd启动过程就干了三件事:

1. modprobe overlay

2. 启动containerd守护进程

3. 进行持久化数据,创建插件目录,/var/lib/containerd

初始化完成containerd之后,就进入到dockerd的初始化了

daemon/daemon.go --------> NewDaemon()

dockerd daemon启动过程比较复杂,主要干的事情如下:

1. 监听metrics.sock

2. 设置默认的日志驱动

3. 从 /var/lib/docker/containers 读取所有目录,启动daemon的时候需要重新注册,包括restart,remove,因此这里可能是起不来的原因,所以我们没有更好的办法就删除这个目录。

4. 检测网桥信息

5. 配置Docker容器的MTU

6. 查验容器通信配置,即iptables规则的添加,docker在启动过程中会将一些docker网络需要的规则写入iptables表

7. 初始化router

8. API server 开始监听,提供api访问服务

setupIP4Tables //设定iptables规则

若再次出现该问题,确认以下几个情况:

1. docker ps 能否看到相关容器

2. 若第一步可以看到,docker exec能否进去,docker stop 相关容器是否正常执行

3. free -h

 一般来讲,我们通过执行dockerd --debug就可以看到问题出现在哪一步

提供以下解决方法(尝试):

  1. 最首先的还是看docker服务启动日志,systemctl status docker,journalctl -xefu docker
  2. Yum remove docker,卸载docker相关安装包,然后重新安装docker相关包。
  3. 执行dockerd –debug查看能否正常启动
  4. 杀掉docker相关进程,备份/var/lib/docker目录,删除该目录
  5. 以上要是都不行,reboot或者reset机器吧  good luck😂

附录:

[root@localhost ~]# dockerd --debug 
INFO[2022-10-15T19:41:21.079272629+08:00] Starting up                                  
DEBU[2022-10-15T19:41:21.079968675+08:00] Listener created for HTTP on unix (/var/run/docker.sock) 
DEBU[2022-10-15T19:41:21.079997108+08:00] Containerd not running, starting daemon managed containerd 
INFO[2022-10-15T19:41:21.082116760+08:00] libcontainerd: started new containerd process  pid=5627
INFO[2022-10-15T19:41:21.082154147+08:00] parsed scheme: "unix"                         module=grpc
INFO[2022-10-15T19:41:21.082161249+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
INFO[2022-10-15T19:41:21.082286621+08:00] ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}] <nil> <nil>}  module=grpc
INFO[2022-10-15T19:41:21.082298831+08:00] ClientConn switching balancer to "pick_first"  module=grpc
WARN[0000] containerd config version `1` has been deprecated and will be removed in containerd v2.0, please switch to version `2`, see https://github.com/containerd/containerd/blob/main/docs/PLUGINS.md#version-header 
INFO[2022-10-15T19:41:21.108770179+08:00] starting containerd                           revision=9cd3357b7fd7218e4aec3eae239db1f68a5a6ec6 version=1.6.8
INFO[2022-10-15T19:41:21.120115709+08:00] loading plugin "io.containerd.content.v1.content"...  type=io.containerd.content.v1
INFO[2022-10-15T19:41:21.120264378+08:00] loading plugin "io.containerd.snapshotter.v1.aufs"...  type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.121785212+08:00] skip loading plugin "io.containerd.snapshotter.v1.aufs"...  error="aufs is not supported (modprobe aufs failed: exit status 1 \"modprobe: FATAL: Module aufs not found.\\n\"): skip plugin" type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.121855407+08:00] loading plugin "io.containerd.snapshotter.v1.btrfs"...  type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.122041014+08:00] skip loading plugin "io.containerd.snapshotter.v1.btrfs"...  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs (xfs) must be a btrfs filesystem to be used with the btrfs snapshotter: skip plugin" type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.122069943+08:00] loading plugin "io.containerd.snapshotter.v1.devmapper"...  type=io.containerd.snapshotter.v1
WARN[2022-10-15T19:41:21.122080886+08:00] failed to load plugin io.containerd.snapshotter.v1.devmapper  error="devmapper not configured"
INFO[2022-10-15T19:41:21.122121203+08:00] loading plugin "io.containerd.snapshotter.v1.native"...  type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.122143621+08:00] loading plugin "io.containerd.snapshotter.v1.overlayfs"...  type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.122274499+08:00] loading plugin "io.containerd.snapshotter.v1.zfs"...  type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.122463964+08:00] skip loading plugin "io.containerd.snapshotter.v1.zfs"...  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.zfs must be a zfs filesystem to be used with the zfs snapshotter: skip plugin" type=io.containerd.snapshotter.v1
INFO[2022-10-15T19:41:21.122491251+08:00] loading plugin "io.containerd.metadata.v1.bolt"...  type=io.containerd.metadata.v1
WARN[2022-10-15T19:41:21.122505607+08:00] could not use snapshotter devmapper in metadata plugin  error="devmapper not configured"
INFO[2022-10-15T19:41:21.122512668+08:00] metadata content store policy set             policy=shared
INFO[2022-10-15T19:41:21.122635884+08:00] loading plugin "io.containerd.differ.v1.walking"...  type=io.containerd.differ.v1
INFO[2022-10-15T19:41:21.122666420+08:00] loading plugin "io.containerd.event.v1.exchange"...  type=io.containerd.event.v1
INFO[2022-10-15T19:41:21.122676399+08:00] loading plugin "io.containerd.gc.v1.scheduler"...  type=io.containerd.gc.v1
INFO[2022-10-15T19:41:21.122692291+08:00] loading plugin "io.containerd.service.v1.introspection-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122704696+08:00] loading plugin "io.containerd.service.v1.containers-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122715472+08:00] loading plugin "io.containerd.service.v1.content-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122724400+08:00] loading plugin "io.containerd.service.v1.diff-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122734707+08:00] loading plugin "io.containerd.service.v1.images-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122743698+08:00] loading plugin "io.containerd.service.v1.leases-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122752006+08:00] loading plugin "io.containerd.service.v1.namespaces-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122826791+08:00] loading plugin "io.containerd.service.v1.snapshots-service"...  type=io.containerd.service.v1
INFO[2022-10-15T19:41:21.122837025+08:00] loading plugin "io.containerd.runtime.v1.linux"...  type=io.containerd.runtime.v1
INFO[2022-10-15T19:41:21.122928456+08:00] loading plugin "io.containerd.runtime.v2.task"...  type=io.containerd.runtime.v2
INFO[2022-10-15T19:41:21.123030248+08:00] loading plugin "io.containerd.monitor.v1.cgroups"...  type=io.containerd.monitor.v1
INFO[2022-10-15T19:41:21.123390292+08:00] loading plugin "io.containerd.service.v1.tasks-service"...  type=io.containerd.service.v1
DEBU[2022-10-15T19:41:21.123420919+08:00] No RDT config file specified, RDT not configured 
INFO[2022-10-15T19:41:21.123432023+08:00] loading plugin "io.containerd.grpc.v1.introspection"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123441039+08:00] loading plugin "io.containerd.internal.v1.restart"...  type=io.containerd.internal.v1
INFO[2022-10-15T19:41:21.123500897+08:00] loading plugin "io.containerd.grpc.v1.containers"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123513863+08:00] loading plugin "io.containerd.grpc.v1.content"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123522647+08:00] loading plugin "io.containerd.grpc.v1.diff"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123530624+08:00] loading plugin "io.containerd.grpc.v1.events"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123561736+08:00] loading plugin "io.containerd.grpc.v1.healthcheck"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123572655+08:00] loading plugin "io.containerd.grpc.v1.images"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123625930+08:00] loading plugin "io.containerd.grpc.v1.leases"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123636931+08:00] loading plugin "io.containerd.grpc.v1.namespaces"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123645759+08:00] loading plugin "io.containerd.internal.v1.opt"...  type=io.containerd.internal.v1
INFO[2022-10-15T19:41:21.123729151+08:00] loading plugin "io.containerd.grpc.v1.snapshots"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123787334+08:00] loading plugin "io.containerd.grpc.v1.tasks"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123799937+08:00] loading plugin "io.containerd.grpc.v1.version"...  type=io.containerd.grpc.v1
INFO[2022-10-15T19:41:21.123809239+08:00] loading plugin "io.containerd.tracing.processor.v1.otlp"...  type=io.containerd.tracing.processor.v1
INFO[2022-10-15T19:41:21.123818607+08:00] skip loading plugin "io.containerd.tracing.processor.v1.otlp"...  error="no OpenTelemetry endpoint: skip plugin" type=io.containerd.tracing.processor.v1
INFO[2022-10-15T19:41:21.123825792+08:00] loading plugin "io.containerd.internal.v1.tracing"...  type=io.containerd.internal.v1
ERRO[2022-10-15T19:41:21.123901506+08:00] failed to initialize a tracing processor "otlp"  error="no OpenTelemetry endpoint: skip plugin"
INFO[2022-10-15T19:41:21.124203328+08:00] serving...                                    address=/var/run/docker/containerd/containerd-debug.sock
INFO[2022-10-15T19:41:21.124278708+08:00] serving...                                    address=/var/run/docker/containerd/containerd.sock.ttrpc
INFO[2022-10-15T19:41:21.124319613+08:00] serving...                                    address=/var/run/docker/containerd/containerd.sock
DEBU[2022-10-15T19:41:21.124329165+08:00] sd notification                               error="<nil>" notified=false state="READY=1"
INFO[2022-10-15T19:41:21.124336787+08:00] containerd successfully booted in 0.016405s  
DEBU[2022-10-15T19:41:21.128177139+08:00] Created containerd monitoring client          address=/var/run/docker/containerd/containerd.sock
DEBU[2022-10-15T19:41:21.129146455+08:00] Started daemon managed containerd            
DEBU[2022-10-15T19:41:21.129827323+08:00] Golang's threads limit set to 13860          
INFO[2022-10-15T19:41:21.130070687+08:00] parsed scheme: "unix"                         module=grpc
INFO[2022-10-15T19:41:21.130095506+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
INFO[2022-10-15T19:41:21.130119927+08:00] ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}] <nil> <nil>}  module=grpc
INFO[2022-10-15T19:41:21.130139261+08:00] ClientConn switching balancer to "pick_first"  module=grpc
DEBU[2022-10-15T19:41:21.130245559+08:00] metrics API listening on /var/run/docker/metrics.sock 
INFO[2022-10-15T19:41:21.131118963+08:00] parsed scheme: "unix"                         module=grpc
INFO[2022-10-15T19:41:21.131145630+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
INFO[2022-10-15T19:41:21.131160086+08:00] ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}] <nil> <nil>}  module=grpc
INFO[2022-10-15T19:41:21.131168435+08:00] ClientConn switching balancer to "pick_first"  module=grpc
DEBU[2022-10-15T19:41:21.131769249+08:00] Using default logging driver json-file       
DEBU[2022-10-15T19:41:21.131825675+08:00] [graphdriver] priority list: [btrfs zfs overlay2 fuse-overlayfs aufs overlay devicemapper vfs] 
DEBU[2022-10-15T19:41:21.131939464+08:00] processing event stream                       module=libcontainerd namespace=plugins.moby
DEBU[2022-10-15T19:41:21.147248709+08:00] backingFs=xfs, projectQuotaSupported=false, indexOff="", userxattr=""  storage-driver=overlay2
INFO[2022-10-15T19:41:21.147298646+08:00] [graphdriver] using prior storage driver: overlay2 
DEBU[2022-10-15T19:41:21.147315713+08:00] Initialized graph driver overlay2            
DEBU[2022-10-15T19:41:21.147884425+08:00] No quota support for local volumes in /var/lib/docker/volumes: Filesystem does not support, or has not enabled quotas 
DEBU[2022-10-15T19:41:21.149555240+08:00] Max Concurrent Downloads: 3                  
DEBU[2022-10-15T19:41:21.149580808+08:00] Max Concurrent Uploads: 5                    
DEBU[2022-10-15T19:41:21.149585975+08:00] Max Download Attempts: 5                     
INFO[2022-10-15T19:41:21.149601246+08:00] Loading containers: start.                   
DEBU[2022-10-15T19:41:21.149663310+08:00] processing event stream                       module=libcontainerd namespace=moby
DEBU[2022-10-15T19:41:21.150275149+08:00] loaded container                              container=3f64d28ba31ef92740afe1f908db51f1192e69e546291805a6da11a934486e85 paused=false running=false
DEBU[2022-10-15T19:41:21.153608049+08:00] restoring container                           container=3f64d28ba31ef92740afe1f908db51f1192e69e546291805a6da11a934486e85 paused=false restarting=false running=false
DEBU[2022-10-15T19:41:21.154209488+08:00] alive: false                                  container=3f64d28ba31ef92740afe1f908db51f1192e69e546291805a6da11a934486e85 paused=false restarting=false running=false
DEBU[2022-10-15T19:41:21.154238916+08:00] done restoring container                      container=3f64d28ba31ef92740afe1f908db51f1192e69e546291805a6da11a934486e85 paused=false restarting=false running=false
DEBU[2022-10-15T19:41:21.154287260+08:00] Option Experimental: false                   
DEBU[2022-10-15T19:41:21.154344190+08:00] Option DefaultDriver: bridge                 
DEBU[2022-10-15T19:41:21.154354959+08:00] Option DefaultNetwork: bridge                
DEBU[2022-10-15T19:41:21.154359153+08:00] Network Control Plane MTU: 1500              
DEBU[2022-10-15T19:41:21.159662888+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -j DOCKER-ISOLATION] 
DEBU[2022-10-15T19:41:21.160621845+08:00] /usr/sbin/iptables, [--wait -t nat -D PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[2022-10-15T19:41:21.161795289+08:00] /usr/sbin/iptables, [--wait -t nat -D OUTPUT -m addrtype --dst-type LOCAL ! --dst 127.0.0.0/8 -j DOCKER] 
DEBU[2022-10-15T19:41:21.162863310+08:00] /usr/sbin/iptables, [--wait -t nat -D OUTPUT -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[2022-10-15T19:41:21.163936247+08:00] /usr/sbin/iptables, [--wait -t nat -D PREROUTING] 
DEBU[2022-10-15T19:41:21.165127694+08:00] /usr/sbin/iptables, [--wait -t nat -D OUTPUT] 
DEBU[2022-10-15T19:41:21.166008360+08:00] /usr/sbin/iptables, [--wait -t nat -F DOCKER] 
DEBU[2022-10-15T19:41:21.166992600+08:00] /usr/sbin/iptables, [--wait -t nat -X DOCKER] 
DEBU[2022-10-15T19:41:21.167986798+08:00] /usr/sbin/iptables, [--wait -t filter -F DOCKER] 
DEBU[2022-10-15T19:41:21.168998918+08:00] /usr/sbin/iptables, [--wait -t filter -X DOCKER] 
DEBU[2022-10-15T19:41:21.170119988+08:00] /usr/sbin/iptables, [--wait -t filter -F DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.171338983+08:00] /usr/sbin/iptables, [--wait -t filter -X DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.172773117+08:00] /usr/sbin/iptables, [--wait -t filter -F DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.173826084+08:00] /usr/sbin/iptables, [--wait -t filter -X DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.174759635+08:00] /usr/sbin/iptables, [--wait -t filter -F DOCKER-ISOLATION] 
DEBU[2022-10-15T19:41:21.175516502+08:00] /usr/sbin/iptables, [--wait -t filter -X DOCKER-ISOLATION] 
DEBU[2022-10-15T19:41:21.176633678+08:00] /usr/sbin/iptables, [--wait -t nat -n -L DOCKER] 
DEBU[2022-10-15T19:41:21.177878742+08:00] /usr/sbin/iptables, [--wait -t nat -N DOCKER] 
DEBU[2022-10-15T19:41:21.179211884+08:00] /usr/sbin/iptables, [--wait -t filter -n -L DOCKER] 
DEBU[2022-10-15T19:41:21.180566259+08:00] /usr/sbin/iptables, [--wait -t filter -n -L DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.181664325+08:00] /usr/sbin/iptables, [--wait -t filter -n -L DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.182619632+08:00] /usr/sbin/iptables, [--wait -t filter -N DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.183698211+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-1 -j RETURN] 
DEBU[2022-10-15T19:41:21.184660229+08:00] /usr/sbin/iptables, [--wait -A DOCKER-ISOLATION-STAGE-1 -j RETURN] 
DEBU[2022-10-15T19:41:21.185664051+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-2 -j RETURN] 
DEBU[2022-10-15T19:41:21.188121097+08:00] /usr/sbin/iptables, [--wait -A DOCKER-ISOLATION-STAGE-2 -j RETURN] 
DEBU[2022-10-15T19:41:21.192328299+08:00] /usr/sbin/iptables, [--wait -t nat -C POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE] 
DEBU[2022-10-15T19:41:21.193248300+08:00] /usr/sbin/iptables, [--wait -t nat -C DOCKER -i docker0 -j RETURN] 
DEBU[2022-10-15T19:41:21.194175582+08:00] /usr/sbin/iptables, [--wait -t nat -I DOCKER -i docker0 -j RETURN] 
DEBU[2022-10-15T19:41:21.195213123+08:00] /usr/sbin/iptables, [--wait -D FORWARD -i docker0 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.196110463+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -i docker0 -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.197259027+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -i docker0 ! -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.198404258+08:00] /usr/sbin/iptables, [--wait -t nat -C PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[2022-10-15T19:41:21.199453036+08:00] /usr/sbin/iptables, [--wait -t nat -A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[2022-10-15T19:41:21.200780336+08:00] /usr/sbin/iptables, [--wait -t nat -C OUTPUT -m addrtype --dst-type LOCAL -j DOCKER ! --dst 127.0.0.0/8] 
DEBU[2022-10-15T19:41:21.201734492+08:00] /usr/sbin/iptables, [--wait -t nat -A OUTPUT -m addrtype --dst-type LOCAL -j DOCKER ! --dst 127.0.0.0/8] 
DEBU[2022-10-15T19:41:21.202760244+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -j DOCKER] 
DEBU[2022-10-15T19:41:21.203603688+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -j DOCKER] 
DEBU[2022-10-15T19:41:21.204579693+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[2022-10-15T19:41:21.205931906+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[2022-10-15T19:41:21.207397466+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -j DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.208290824+08:00] /usr/sbin/iptables, [--wait -D FORWARD -j DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.209274011+08:00] /usr/sbin/iptables, [--wait -I FORWARD -j DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.210204484+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.211063272+08:00] /usr/sbin/iptables, [--wait -t filter -I DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.212171796+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.213450432+08:00] /usr/sbin/iptables, [--wait -t filter -I DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.214963139+08:00] Network (71beb0a) restored                   
DEBU[2022-10-15T19:41:21.215726339+08:00] Allocating IPv4 pools for network bridge (71beb0a9302dfbcb53030b270c3349d5ca78532d6defe66ddb73594b5b6c3333) 
DEBU[2022-10-15T19:41:21.215773745+08:00] RequestPool(LocalDefault, 172.17.0.0/16, , map[], false) 
DEBU[2022-10-15T19:41:21.215796208+08:00] RequestAddress(LocalDefault/172.17.0.0/16, 172.17.0.1, map[RequestAddressType:com.docker.network.gateway]) 
DEBU[2022-10-15T19:41:21.215808832+08:00] Request address PoolID:172.17.0.0/16 App: ipam/default/data, ID: LocalDefault/172.17.0.0/16, DBIndex: 0x0, Bits: 65536, Unselected: 65534, Sequence: (0x80000000, 1)->(0x0, 2046)->(0x1, 1)->end Curr:0 Serial:false PrefAddress:172.17.0.1  
DEBU[2022-10-15T19:41:21.216797140+08:00] /usr/sbin/iptables, [--wait -t nat -C POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE] 
DEBU[2022-10-15T19:41:21.217865755+08:00] /usr/sbin/iptables, [--wait -t nat -D POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE] 
DEBU[2022-10-15T19:41:21.218962839+08:00] /usr/sbin/iptables, [--wait -t nat -C DOCKER -i docker0 -j RETURN] 
DEBU[2022-10-15T19:41:21.220171662+08:00] /usr/sbin/iptables, [--wait -t nat -D DOCKER -i docker0 -j RETURN] 
DEBU[2022-10-15T19:41:21.221813508+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -i docker0 -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.222887461+08:00] /usr/sbin/iptables, [--wait -D FORWARD -i docker0 -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.224157776+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -i docker0 ! -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.224556187+08:00] garbage collected                             d="525.124µs"
DEBU[2022-10-15T19:41:21.225127621+08:00] /usr/sbin/iptables, [--wait -D FORWARD -i docker0 ! -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.226040182+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -j DOCKER] 
DEBU[2022-10-15T19:41:21.226865487+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -j DOCKER] 
DEBU[2022-10-15T19:41:21.227793795+08:00] /usr/sbin/iptables, [--wait -D FORWARD -o docker0 -j DOCKER] 
DEBU[2022-10-15T19:41:21.229117606+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[2022-10-15T19:41:21.230311400+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[2022-10-15T19:41:21.231515777+08:00] /usr/sbin/iptables, [--wait -D FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[2022-10-15T19:41:21.233003612+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.234091585+08:00] /usr/sbin/iptables, [--wait -t filter -D DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.235181467+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.236022568+08:00] /usr/sbin/iptables, [--wait -t filter -D DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.237607372+08:00] releasing IPv4 pools from network bridge (71beb0a9302dfbcb53030b270c3349d5ca78532d6defe66ddb73594b5b6c3333) 
DEBU[2022-10-15T19:41:21.237648299+08:00] ReleaseAddress(LocalDefault/172.17.0.0/16, 172.17.0.1) 
DEBU[2022-10-15T19:41:21.237664655+08:00] Released address PoolID:LocalDefault/172.17.0.0/16, Address:172.17.0.1 Sequence:App: ipam/default/data, ID: LocalDefault/172.17.0.0/16, DBIndex: 0x0, Bits: 65536, Unselected: 65533, Sequence: (0xc0000000, 1)->(0x0, 2046)->(0x1, 1)->end Curr:0 
DEBU[2022-10-15T19:41:21.237670731+08:00] ReleasePool(LocalDefault/172.17.0.0/16)      
DEBU[2022-10-15T19:41:21.239646474+08:00] cleanupServiceDiscovery for network:71beb0a9302dfbcb53030b270c3349d5ca78532d6defe66ddb73594b5b6c3333 
DEBU[2022-10-15T19:41:21.239672557+08:00] cleanupServiceBindings for 71beb0a9302dfbcb53030b270c3349d5ca78532d6defe66ddb73594b5b6c3333 
INFO[2022-10-15T19:41:21.240989180+08:00] Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address 
DEBU[2022-10-15T19:41:21.241044641+08:00] Allocating IPv4 pools for network bridge (c1b8a375a0246ac5ebf704b187679fa7a056dc5394bfab75fae2d684bdfabdaf) 
DEBU[2022-10-15T19:41:21.241058869+08:00] RequestPool(LocalDefault, 172.17.0.0/16, , map[], false) 
DEBU[2022-10-15T19:41:21.241074985+08:00] RequestAddress(LocalDefault/172.17.0.0/16, 172.17.0.1, map[RequestAddressType:com.docker.network.gateway]) 
DEBU[2022-10-15T19:41:21.241084947+08:00] Request address PoolID:172.17.0.0/16 App: ipam/default/data, ID: LocalDefault/172.17.0.0/16, DBIndex: 0x0, Bits: 65536, Unselected: 65534, Sequence: (0x80000000, 1)->(0x0, 2046)->(0x1, 1)->end Curr:0 Serial:false PrefAddress:172.17.0.1  
DEBU[2022-10-15T19:41:21.241307237+08:00] /usr/sbin/iptables, [--wait -t nat -C POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE] 
DEBU[2022-10-15T19:41:21.242331246+08:00] /usr/sbin/iptables, [--wait -t nat -I POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE] 
DEBU[2022-10-15T19:41:21.243235141+08:00] /usr/sbin/iptables, [--wait -t nat -C DOCKER -i docker0 -j RETURN] 
DEBU[2022-10-15T19:41:21.244104459+08:00] /usr/sbin/iptables, [--wait -t nat -I DOCKER -i docker0 -j RETURN] 
DEBU[2022-10-15T19:41:21.245081831+08:00] /usr/sbin/iptables, [--wait -D FORWARD -i docker0 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.245953820+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -i docker0 -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.247215225+08:00] /usr/sbin/iptables, [--wait -I FORWARD -i docker0 -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.248630325+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -i docker0 ! -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.249537345+08:00] /usr/sbin/iptables, [--wait -I FORWARD -i docker0 ! -o docker0 -j ACCEPT] 
DEBU[2022-10-15T19:41:21.250598772+08:00] /usr/sbin/iptables, [--wait -t nat -C PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[2022-10-15T19:41:21.252005660+08:00] /usr/sbin/iptables, [--wait -t nat -C PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[2022-10-15T19:41:21.253640240+08:00] /usr/sbin/iptables, [--wait -t nat -C OUTPUT -m addrtype --dst-type LOCAL -j DOCKER ! --dst 127.0.0.0/8] 
DEBU[2022-10-15T19:41:21.254680920+08:00] /usr/sbin/iptables, [--wait -t nat -C OUTPUT -m addrtype --dst-type LOCAL -j DOCKER ! --dst 127.0.0.0/8] 
DEBU[2022-10-15T19:41:21.255624933+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -j DOCKER] 
DEBU[2022-10-15T19:41:21.256475499+08:00] /usr/sbin/iptables, [--wait -I FORWARD -o docker0 -j DOCKER] 
DEBU[2022-10-15T19:41:21.257527984+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[2022-10-15T19:41:21.258666472+08:00] /usr/sbin/iptables, [--wait -I FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT] 
DEBU[2022-10-15T19:41:21.259866417+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -j DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.260723501+08:00] /usr/sbin/iptables, [--wait -D FORWARD -j DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.261601184+08:00] /usr/sbin/iptables, [--wait -I FORWARD -j DOCKER-ISOLATION-STAGE-1] 
DEBU[2022-10-15T19:41:21.262635185+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.263985718+08:00] /usr/sbin/iptables, [--wait -t filter -I DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2] 
DEBU[2022-10-15T19:41:21.265574600+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.267087357+08:00] /usr/sbin/iptables, [--wait -t filter -I DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP] 
DEBU[2022-10-15T19:41:21.270105025+08:00] /usr/sbin/iptables, [--wait -t filter -n -L DOCKER-USER] 
DEBU[2022-10-15T19:41:21.271099607+08:00] /usr/sbin/iptables, [--wait -t filter -C DOCKER-USER -j RETURN] 
DEBU[2022-10-15T19:41:21.271889874+08:00] /usr/sbin/iptables, [--wait -t filter -C FORWARD -j DOCKER-USER] 
DEBU[2022-10-15T19:41:21.272643823+08:00] /usr/sbin/iptables, [--wait -D FORWARD -j DOCKER-USER] 
DEBU[2022-10-15T19:41:21.273625693+08:00] /usr/sbin/iptables, [--wait -I FORWARD -j DOCKER-USER] 
INFO[2022-10-15T19:41:21.275867320+08:00] Loading containers: done.                    
INFO[2022-10-15T19:41:21.291334079+08:00] Docker daemon                                 commit=e42327a graphdriver(s)=overlay2 version=20.10.18
INFO[2022-10-15T19:41:21.291396656+08:00] Daemon has completed initialization          
DEBU[2022-10-15T19:41:21.302689342+08:00] Registering routers                          
DEBU[2022-10-15T19:41:21.302727253+08:00] Registering GET, /containers/{name:.*}/checkpoints 
DEBU[2022-10-15T19:41:21.302805246+08:00] Registering POST, /containers/{name:.*}/checkpoints 
DEBU[2022-10-15T19:41:21.302855294+08:00] Registering DELETE, /containers/{name}/checkpoints/{checkpoint} 
DEBU[2022-10-15T19:41:21.302927153+08:00] Registering HEAD, /containers/{name:.*}/archive 
DEBU[2022-10-15T19:41:21.302964644+08:00] Registering GET, /containers/json            
DEBU[2022-10-15T19:41:21.302999650+08:00] Registering GET, /containers/{name:.*}/export 
DEBU[2022-10-15T19:41:21.303042325+08:00] Registering GET, /containers/{name:.*}/changes 
DEBU[2022-10-15T19:41:21.303112224+08:00] Registering GET, /containers/{name:.*}/json  
DEBU[2022-10-15T19:41:21.303144701+08:00] Registering GET, /containers/{name:.*}/top   
DEBU[2022-10-15T19:41:21.303173990+08:00] Registering GET, /containers/{name:.*}/logs  
DEBU[2022-10-15T19:41:21.303236357+08:00] Registering GET, /containers/{name:.*}/stats 
DEBU[2022-10-15T19:41:21.303268127+08:00] Registering GET, /containers/{name:.*}/attach/ws 
DEBU[2022-10-15T19:41:21.303332748+08:00] Registering GET, /exec/{id:.*}/json          
DEBU[2022-10-15T19:41:21.303362205+08:00] Registering GET, /containers/{name:.*}/archive 
DEBU[2022-10-15T19:41:21.303392095+08:00] Registering POST, /containers/create         
DEBU[2022-10-15T19:41:21.303536750+08:00] Registering POST, /containers/{name:.*}/kill 
DEBU[2022-10-15T19:41:21.303699624+08:00] Registering POST, /containers/{name:.*}/pause 
DEBU[2022-10-15T19:41:21.303776035+08:00] Registering POST, /containers/{name:.*}/unpause 
DEBU[2022-10-15T19:41:21.305764021+08:00] Registering POST, /containers/{name:.*}/restart 
DEBU[2022-10-15T19:41:21.305837641+08:00] Registering POST, /containers/{name:.*}/start 
DEBU[2022-10-15T19:41:21.305890884+08:00] Registering POST, /containers/{name:.*}/stop 
DEBU[2022-10-15T19:41:21.305937905+08:00] Registering POST, /containers/{name:.*}/wait 
DEBU[2022-10-15T19:41:21.305985465+08:00] Registering POST, /containers/{name:.*}/resize 
DEBU[2022-10-15T19:41:21.306036076+08:00] Registering POST, /containers/{name:.*}/attach 
DEBU[2022-10-15T19:41:21.306083798+08:00] Registering POST, /containers/{name:.*}/copy 
DEBU[2022-10-15T19:41:21.306131425+08:00] Registering POST, /containers/{name:.*}/exec 
DEBU[2022-10-15T19:41:21.306175303+08:00] Registering POST, /exec/{name:.*}/start      
DEBU[2022-10-15T19:41:21.306219688+08:00] Registering POST, /exec/{name:.*}/resize     
DEBU[2022-10-15T19:41:21.306264043+08:00] Registering POST, /containers/{name:.*}/rename 
DEBU[2022-10-15T19:41:21.306312261+08:00] Registering POST, /containers/{name:.*}/update 
DEBU[2022-10-15T19:41:21.306358328+08:00] Registering POST, /containers/prune          
DEBU[2022-10-15T19:41:21.306524675+08:00] Registering POST, /commit                    
DEBU[2022-10-15T19:41:21.306564015+08:00] Registering PUT, /containers/{name:.*}/archive 
DEBU[2022-10-15T19:41:21.306614730+08:00] Registering DELETE, /containers/{name:.*}    
DEBU[2022-10-15T19:41:21.306663807+08:00] Registering GET, /images/json                
DEBU[2022-10-15T19:41:21.306697071+08:00] Registering GET, /images/search              
DEBU[2022-10-15T19:41:21.306750976+08:00] Registering GET, /images/get                 
DEBU[2022-10-15T19:41:21.306792419+08:00] Registering GET, /images/{name:.*}/get       
DEBU[2022-10-15T19:41:21.306838063+08:00] Registering GET, /images/{name:.*}/history   
DEBU[2022-10-15T19:41:21.306884614+08:00] Registering GET, /images/{name:.*}/json      
DEBU[2022-10-15T19:41:21.306929258+08:00] Registering POST, /images/load               
DEBU[2022-10-15T19:41:21.306960919+08:00] Registering POST, /images/create             
DEBU[2022-10-15T19:41:21.306993738+08:00] Registering POST, /images/{name:.*}/push     
DEBU[2022-10-15T19:41:21.307039396+08:00] Registering POST, /images/{name:.*}/tag      
DEBU[2022-10-15T19:41:21.307527025+08:00] Registering POST, /images/prune              
DEBU[2022-10-15T19:41:21.307592196+08:00] Registering DELETE, /images/{name:.*}        
DEBU[2022-10-15T19:41:21.307627608+08:00] Registering OPTIONS, /{anyroute:.*}          
DEBU[2022-10-15T19:41:21.307698688+08:00] Registering GET, /_ping                      
DEBU[2022-10-15T19:41:21.307760175+08:00] Registering HEAD, /_ping                     
DEBU[2022-10-15T19:41:21.307789887+08:00] Registering GET, /events                     
DEBU[2022-10-15T19:41:21.307820290+08:00] Registering GET, /info                       
DEBU[2022-10-15T19:41:21.307849486+08:00] Registering GET, /version                    
DEBU[2022-10-15T19:41:21.307924864+08:00] Registering GET, /system/df                  
DEBU[2022-10-15T19:41:21.308020436+08:00] Registering POST, /auth                      
DEBU[2022-10-15T19:41:21.308052933+08:00] Registering GET, /volumes                    
DEBU[2022-10-15T19:41:21.308100915+08:00] Registering GET, /volumes/{name:.*}          
DEBU[2022-10-15T19:41:21.308151007+08:00] Registering POST, /volumes/create            
DEBU[2022-10-15T19:41:21.308200839+08:00] Registering POST, /volumes/prune             
DEBU[2022-10-15T19:41:21.308244014+08:00] Registering DELETE, /volumes/{name:.*}       
DEBU[2022-10-15T19:41:21.308288816+08:00] Registering POST, /build                     
DEBU[2022-10-15T19:41:21.308335278+08:00] Registering POST, /build/prune               
DEBU[2022-10-15T19:41:21.308357293+08:00] Registering POST, /build/cancel              
DEBU[2022-10-15T19:41:21.308411465+08:00] Registering POST, /session                   
DEBU[2022-10-15T19:41:21.308450991+08:00] Registering POST, /swarm/init                
DEBU[2022-10-15T19:41:21.308470981+08:00] Registering POST, /swarm/join                
DEBU[2022-10-15T19:41:21.308489767+08:00] Registering POST, /swarm/leave               
DEBU[2022-10-15T19:41:21.308530219+08:00] Registering GET, /swarm                      
DEBU[2022-10-15T19:41:21.308568336+08:00] Registering GET, /swarm/unlockkey            
DEBU[2022-10-15T19:41:21.308590717+08:00] Registering POST, /swarm/update              
DEBU[2022-10-15T19:41:21.308623650+08:00] Registering POST, /swarm/unlock              
DEBU[2022-10-15T19:41:21.308662465+08:00] Registering GET, /services                   
DEBU[2022-10-15T19:41:21.308681846+08:00] Registering GET, /services/{id}              
DEBU[2022-10-15T19:41:21.308753417+08:00] Registering POST, /services/create           
DEBU[2022-10-15T19:41:21.308802587+08:00] Registering POST, /services/{id}/update      
DEBU[2022-10-15T19:41:21.308873846+08:00] Registering DELETE, /services/{id}           
DEBU[2022-10-15T19:41:21.308922000+08:00] Registering GET, /services/{id}/logs         
DEBU[2022-10-15T19:41:21.308957912+08:00] Registering GET, /nodes                      
DEBU[2022-10-15T19:41:21.308993486+08:00] Registering GET, /nodes/{id}                 
DEBU[2022-10-15T19:41:21.309020518+08:00] Registering DELETE, /nodes/{id}              
DEBU[2022-10-15T19:41:21.309044886+08:00] Registering POST, /nodes/{id}/update         
DEBU[2022-10-15T19:41:21.309075204+08:00] Registering GET, /tasks                      
DEBU[2022-10-15T19:41:21.309105450+08:00] Registering GET, /tasks/{id}                 
DEBU[2022-10-15T19:41:21.309146202+08:00] Registering GET, /tasks/{id}/logs            
DEBU[2022-10-15T19:41:21.309186677+08:00] Registering GET, /secrets                    
DEBU[2022-10-15T19:41:21.309221114+08:00] Registering POST, /secrets/create            
DEBU[2022-10-15T19:41:21.309245169+08:00] Registering DELETE, /secrets/{id}            
DEBU[2022-10-15T19:41:21.309270467+08:00] Registering GET, /secrets/{id}               
DEBU[2022-10-15T19:41:21.309326788+08:00] Registering POST, /secrets/{id}/update       
DEBU[2022-10-15T19:41:21.309374271+08:00] Registering GET, /configs                    
DEBU[2022-10-15T19:41:21.309396325+08:00] Registering POST, /configs/create            
DEBU[2022-10-15T19:41:21.309443616+08:00] Registering DELETE, /configs/{id}            
DEBU[2022-10-15T19:41:21.309488191+08:00] Registering GET, /configs/{id}               
DEBU[2022-10-15T19:41:21.309529765+08:00] Registering POST, /configs/{id}/update       
DEBU[2022-10-15T19:41:21.309585963+08:00] Registering GET, /plugins                    
DEBU[2022-10-15T19:41:21.309619961+08:00] Registering GET, /plugins/{name:.*}/json     
DEBU[2022-10-15T19:41:21.309674992+08:00] Registering GET, /plugins/privileges         
DEBU[2022-10-15T19:41:21.309736401+08:00] Registering DELETE, /plugins/{name:.*}       
DEBU[2022-10-15T19:41:21.309767934+08:00] Registering POST, /plugins/{name:.*}/enable  
DEBU[2022-10-15T19:41:21.309824211+08:00] Registering POST, /plugins/{name:.*}/disable 
DEBU[2022-10-15T19:41:21.309868778+08:00] Registering POST, /plugins/pull              
DEBU[2022-10-15T19:41:21.309904209+08:00] Registering POST, /plugins/{name:.*}/push    
DEBU[2022-10-15T19:41:21.309931897+08:00] Registering POST, /plugins/{name:.*}/upgrade 
DEBU[2022-10-15T19:41:21.309958276+08:00] Registering POST, /plugins/{name:.*}/set     
DEBU[2022-10-15T19:41:21.310000689+08:00] Registering POST, /plugins/create            
DEBU[2022-10-15T19:41:21.310040050+08:00] Registering GET, /distribution/{name:.*}/json 
DEBU[2022-10-15T19:41:21.310088453+08:00] Registering POST, /grpc                      
DEBU[2022-10-15T19:41:21.310106295+08:00] Registering GET, /networks                   
DEBU[2022-10-15T19:41:21.310123589+08:00] Registering GET, /networks/                  
DEBU[2022-10-15T19:41:21.310142007+08:00] Registering GET, /networks/{id:.+}           
DEBU[2022-10-15T19:41:21.310168415+08:00] Registering POST, /networks/create           
DEBU[2022-10-15T19:41:21.310191723+08:00] Registering POST, /networks/{id:.*}/connect  
DEBU[2022-10-15T19:41:21.310232934+08:00] Registering POST, /networks/{id:.*}/disconnect 
DEBU[2022-10-15T19:41:21.310275951+08:00] Registering POST, /networks/prune            
DEBU[2022-10-15T19:41:21.310304497+08:00] Registering DELETE, /networks/{id:.*}        
INFO[2022-10-15T19:41:21.310408596+08:00] API listen on /var/run/docker.sock

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/746873.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring5学习笔记--详细一文通

Spring5学习笔记--详细一文通 1 Spring 框架概述1.1 Spring 5 简述1.2 Spring5入门案例1.2.1 Spring5下载1.1.2 打开 idea 工具&#xff0c;创建普通 Java 工程1.2.3 导入 Spring5 相关 jar 包1.2.4 创建普通类&#xff0c;在这个类创建普通方法1.2.5 创建 Spring 配置文件&…

同时多项目多个node版本-比nvm好用的volta

一、node版本问题场景&#xff1a; 1、服务器上跑的多个node项目需要不同的node版本&#xff0c;且没条件上docker。 2、开发环境中多个项目需要node版本不同&#xff0c;且同时不止是一个项目在开发中&#xff0c;用了nvm进行node版本管理和切换&#xff0c;但是太麻烦。 二…

如何开发一款软件?

创建软件的步骤 1. 头脑风暴 创意生成是制作应用程序的第一步。考虑这个问题的最好方法是将你的应用想象成解决问题。 你自己的经历可以成为灵感的重要来源。试着想想你面临的问题&#xff0c;无论是软件和计算机&#xff0c;还是你的一般生活。很有可能&#xff0c;你面临的…

3DVR全景乡村振兴创新展示,助力数字化乡村建设

导语&#xff1a; 随着社会进步和科技发展&#xff0c;3D虚拟现实&#xff08;VR&#xff09;全景技术在乡村振兴领域展现出巨大的潜力和创新空间。通过结合3DVR全景技术和乡村振兴理念&#xff0c;我们可以为乡村带来全新的展示方式和体验&#xff0c;推动乡村振兴的进程。本…

MiniGPT4 在RTX-3090 Ubuntu服务器部署步骤详解

主要参考知乎帖子&#xff1a; MiniGPT-4 本地部署 RTX 3090 - 知乎 MiniGPT-4部署比麻烦&#xff0c;首先需要获取LLaMA权重&#xff0c;并结合Vicuna的bitwise XOR增量文件完成Vicuna模型权重生成&#xff0c;最后准备好预训练的MiniGPT-4进行模型部署。为了便于理解&#…

Photoshop简单案例(10)——利用PS修改证件照尺寸为1寸(或其他)

目录 一、项目介绍二、基本流程三、效果演示 一、项目介绍 本文介绍一下利用Photoshop修改证件照尺寸为1寸的方法。 二、基本流程 首先打开新建一个空白画布&#xff0c;设置画布宽度和高度分别为25mm和35mm&#xff0c;分辨率为300&#xff0c;背景颜色与证件照背景相同&am…

基于GPT4All的大型语言模型设计生态系统

GPT4All 一套专为强大、定制的大型语言模型设计的生态系统,能够在消费级CPU上本地运行。在GPT4All中,所使用的模型是一个3GB至8GB的文件,读者可以自行下载该文件,并将其插入到GPT4All的开源生态系统软件中。这一软件生态系统由Nomic AI提供支持并进行维护,其目的是确保系统…

04-树 (数据结构和算法)

4.1 树的基本概念 树&#xff08;Tree&#xff09;是n&#xff08;n>0&#xff09;个结点的有限集&#xff0c;它或为空树&#xff08;n 0&#xff09;&#xff1b;或为非空树&#xff0c;对于非空树 T&#xff1a; 有且只有一个称之为根的结点 除根节点以外的其他结点可…

随手笔记——关于齐次变换矩阵的理解

随手笔记——关于齐次变换矩阵的理解 说明符号坐标系表示&#xff08;coordinate representation&#xff09;坐标系变换&#xff08;coordinate transformation&#xff09;点的操作&#xff08;point operator&#xff09; 说明 齐次变换矩阵的几种解释&#xff0c; 主要从坐…

十大排序算法【原理】【步骤】【动图】【C++实现】

十大排序算法 排序算法可以分为内部排序和外部排序&#xff0c;内部排序是数据记录在内存中进行排序&#xff0c;而外部排序是因排序的数据很大&#xff0c;一次不能容纳全部的排序记录&#xff0c;在排序过程中需要访问外存。常见的内部排序算法有&#xff1a;插入排序、希尔…

【面试题32】include和require的区别及用法

文章目录 一、前言二 、include和require的区别三、include和require的用法介绍3.1 include的用法3.2 require的用法及示例 四、include和require的用法示例4.1 包含文件4.2 包含文件并将结果赋值给变量4.3 动态包含文件4.4 使用绝对路径包含文件4.5 包含文件失败处理4.6 包含文…

MATLAB 的函数计算与作图

基本初等函数的输入系统运算与操作函数的输入函数值的计算1. 数值计算方式2. 符号计算方式2.1 函数&#xff1a;sym2.2 函数&#xff1a;syms 函数的作图1. 一般函数 yf(x) 的作图&#xff08;二维&#xff09;作图基本形式作多重线作图的线型和颜色作图的网格和标记、图例、字…

React Dva项目创建Model,并演示数据管理与函数调用

本文的话 我们讲一下定义Model 也就是Dva中redux的部分 我们打开一个刚创建的Dva项目 看到 src下的models 下 就是Model部分 这里 他给我们了一个案例 如果用 react-redux 管理 模块多了之后会看着比较乱 或 很麻烦 但是 大家会发现 在Model中 他将这些都放在一起了 只需要创建…

css属性

1、形状相关的 宽、高、边线&#xff08;粗细、线样式、颜色&#xff09;、弧度、前景色、背景色、透明度 圆角矩形&#xff1a; 随着radius的增加&#xff0c;角会越来越圆&#xff0c;当设置为高的一半&#xff08;高200是直径&#xff09;时&#xff0c;就会成圆角 宽高都是…

请求响应-日期时间参数的接受

日期参数 由于从前端发送的请求中&#xff0c;日期的格式可能各不相同&#xff0c;使用DateTimeFormat注解完成日期参数格式的转换具体关键代码如下&#xff1a; 在postman中发出对应请求携带对应参数结果如下&#xff1a; 参数名称要与方法中的形参名称一致&#xff0c;免得…

oracle排序问题

记录工作中遇到的问题让工作更加顺利! 文章目录 1.排序1.1数字字符串排序问题解决1.2自定义处理NULL 1.排序 工作中遇到一个需要排序的地方&#xff0c;遇到两个函数 DENSE_RANK和 RANK &#xff1b;RANK 函数是按照一个字段或值排序后返回绝对位置&#xff08;即相同值排名相…

HCIA云计算1

KVM是所有云平台的底座&#xff0c;云下面是虚拟化云台&#xff0c;虚拟化只提供基础架构&#xff0c;云可以提供服务&#xff0c;云是大杂烩。 OpenStack 开源云操作系统 KVM 开源虚拟化 Linux KVM OpenStack 大部分云厂商都是基于OpenStack 做二次开发 VRM理解成物理服务器…

推荐10个Flutter开源项目

作为跨平台应用开发的领头羊,Flutter从已发布就受到广大开发者的追捧。使用Flutter技术开发的应用不仅体验上无限接近原生应用,在开发效率上也是其他技术无法比拟的。随着其开发者社区的不断壮大,Flutter生态系统已经相当强大,并且众多开源应用程序也相继诞生。这些开源应用…

杨氏模量——从宏观(应力-应变曲线)到微观(原子键)尺度解释杨氏模量

杨氏模量&#xff08;Young’s Modulus&#xff09;是三个主要弹性常数之一&#xff0c;与剪切模量&#xff08;shear modulus&#xff09;、体积模量&#xff08;bulk modulus&#xff09;一起用于描述材料在载荷下如何变形 以下展示了拉伸试验的应力应变曲线 如果施加的应力…

3Ds max入门教程:创建雪地

推荐&#xff1a; NSDT场景编辑器助你快速搭建可二次开发的3D应用场景 在本教程中&#xff0c;您将学习在 3ds Max 9 中制作雪地。在本教程中&#xff0c;我们将使用一些原始平面、粒子系统和纹理&#xff0c;看看您可以从中制作出多么有效和逼真的场景。 好的&#xff0c;首先…