Docker镜像使用

镜像打包操作

1,打包镜像文件

bash 复制代码
docker save -o ghidra_11.3.1.tar ghidra/ghidra:11.3.1_PUBLIC

命令注解:

docker save:导出镜像到文件

-o ghidra_11.3.1.tar:指定输出文件名(.tar格式)

ghidra/ghidra:11.3.1_PUBLIC:需打包的镜像名及标签

2,压缩文件(可选)

bash 复制代码
gzip ghidra_11.3.1.tar  # 生成 ghidra_11.3.1.tar.gz(体积减小约40%)

3,传输到目标机器

bash 复制代码
scp ghidra_11.3.1.tar.gz user@目标机IP:/目标路径/

镜像加载操作

1,解压文件(若已压缩)

bash 复制代码
gzip -d ghidra_11.3.1.tar.gz  # 解压为 .tar 文件

2,加载镜像到Docker

bash 复制代码
docker load -i ghidra_11.3.1.tar

命令注解:

docker load:从文件加载镜像

-i:指定输入文件路径

3,验证镜像

bash 复制代码
docker images | grep ghidra

预期输出:

ghidra/ghidra 11.3.1_PUBLIC a9229af2b4dd X hours ago 1.36GB

使用镜像启动容器

bash 复制代码
docker run \
    --env MODE=headless \
    --rm \
    --cpus=2 --cpuset-cpus="4,5" \
    -m 4g --memory-swap=4g \
    --volume /usr/local/tckxsoc/work:/home/ghidra/myproject:rw \
    --volume /usr/local/server/siem/python:/home/ghidra/python:ro \
    ghidra/ghidra:11.3.1_PUBLIC \
    /home/ghidra/myproject tckx_cet \
    -import /home/ghidra/myproject/libc.so.6 -scriptPath /home/ghidra/python -preScript ins_options.py -postScript ins_analyze.py -overwrite -deleteProject

Ps:如果有权限报错类问题如:

ERROR Abort due to Headless analyzer error: Permission denied (HeadlessAnalyzer) java.io.IOException: Permission denied

执行下面命令给相关目录授权

bash 复制代码
chmod -R 777 /usr/local/tckxsoc/work
chmod -R 777 /usr/local/server/siem/python
相关推荐
cui_hao_nan3 小时前
JVM——如何对java的垃圾回收机制调优?
java·jvm
熟悉的新风景5 小时前
springboot项目或其他项目使用@Test测试项目接口配置-spring-boot-starter-test
java·spring boot·后端
心平愈三千疾5 小时前
学习秒杀系统-实现秒杀功能(商品列表,商品详情,基本秒杀功能实现,订单详情)
java·分布式·学习
玩代码5 小时前
备忘录设计模式
java·开发语言·设计模式·备忘录设计模式
小趴菜吖6 小时前
使用macvlan实现容器的跨主机通信
docker
一只 Lemon6 小时前
K8s存储系统(通俗易懂版)
云原生·容器·kubernetes
岁忧6 小时前
(nice!!!)(LeetCode 面试经典 150 题 ) 30. 串联所有单词的子串 (哈希表+字符串+滑动窗口)
java·c++·leetcode·面试·go·散列表
澜兮子6 小时前
k8s-高级调度(一)
云原生·容器·kubernetes
无敌糖果6 小时前
K8S的Helm包管理器
docker·容器·kubernetes·helm·helm安装包