【docker】根据docker inspect获取启动参数

背景

服务器里起了好些服务,但启动脚本已经丢失了,怎样通过运行中的容器反推启动脚本呢?
启动脚本:环境变量,端口映射什么的

通过 docker inspect

通过 docker inspect 可以拿到一些信息,但信息确实很多,并且几十个服务,总不能一个一个去查,怎么办,
当然是写脚本,
但写脚本之前,先找一下,通过一个容器的 docker inspect 信息,怎样快速把 env 信息捞出来呢?

一个 docker inspect 的示例:

[
    {
       ...
        "State": {
            "Status": "running",
        ...
        "Config": {
            ...
            "StdinOnce": false,
            "Env": [
                "spring.cloud.inetutils.preferred-networks=10.1.12.14",
            ],
           ...
    }
]

获取 env 参数

docker inspect --format "{{range .Config.Env}}{{println .}}{{end}}" "$container" >> "$output_file"

获取容器端口映射

docker port "$container"

融合到一个脚本里面

#!/bin/bash

# 定义存储结果的文件路径
output_file="/tmp/docker.txt"

# 清空文件内容
> "$output_file"

# 遍历容器列表
containers=$(docker ps --format "{{.Names}}")
for container in $containers; do
  echo "Container: $container" >> "$output_file"
  
  # 获取容器的启动参数
  echo "  Start Command:" >> "$output_file"
  docker inspect --format "{{range .Config.Env}}{{println .}}{{end}}" "$container" >> "$output_file"
 
  # 取容器的端口映射信息
  echo "  Port Mapping:" >> "$output_file"
  docker port "$container" >> "$output_file"

  echo "" >> "$output_file"
done

echo "输出完成,请查看 $output_file 文件。"

相关推荐

  1. docker根据docker inspect获取启动参数

    2023-12-12 17:56:56       41 阅读
  2. 启动大模型训练常见的docker参数

    2023-12-12 17:56:56       15 阅读
  3. golang 根据URL获取文件名

    2023-12-12 17:56:56       35 阅读
  4. docker 启动

    2023-12-12 17:56:56       6 阅读
  5. JVM 启动参数

    2023-12-12 17:56:56       17 阅读
  6. JVM常见启动参数

    2023-12-12 17:56:56       21 阅读
  7. selenium启动参数设置

    2023-12-12 17:56:56       10 阅读
  8. SpringMVC---获取参数

    2023-12-12 17:56:56       38 阅读
  9. SpringMVC之参数获取

    2023-12-12 17:56:56       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-12 17:56:56       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-12 17:56:56       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-12 17:56:56       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-12 17:56:56       20 阅读

热门阅读

  1. JVM调优

    JVM调优

    2023-12-12 17:56:56      41 阅读
  2. Go 语言区块链测试实践指南(一):GO单元测试

    2023-12-12 17:56:56       41 阅读
  3. 2023年的PHP项目部署笔记。什么?还有人用PHP?

    2023-12-12 17:56:56       40 阅读
  4. JVM调优

    JVM调优

    2023-12-12 17:56:56      45 阅读
  5. Go 语言区块链测试实践指南(一):GO单元测试

    2023-12-12 17:56:56       40 阅读
  6. 2023年的PHP项目部署笔记。什么?还有人用PHP?

    2023-12-12 17:56:56       39 阅读