k8s学习——创建测试镜像

创建一个安装了ifconfig、telnet、curl、nc、traceroute、ping、nslookup等网络工具的镜像,便于集群中的测试。

创建一个Dockerfile文件

复制代码
# 使用代理下载 Ubuntu 镜像作为基础
FROM docker.m.daocloud.io/library/ubuntu:latest

# 设置环境变量 DEBIAN_FRONTEND 为 noninteractive,避免安装过程中出现交互式提示
ENV DEBIAN_FRONTEND=noninteractive

# 更新 Ubuntu 软件源并安装所需的网络工具
RUN apt-get update && \
    apt-get install -y net-tools telnet curl netcat-traditional traceroute iputils-ping dnsutils && \
    apt-get clean

# 设置工作目录,这一步可以根据实际情况选择是否需要
WORKDIR /app

# 可选:添加一些额外的配置或拷贝一些文件到镜像中
# COPY . .

# 可选:定义容器启动时执行的默认命令
CMD ["/bin/bash"]

运行docker build -t core.harbor.shell.com:443/library/nettools:v1 . 命令,其中core.harbor.shell.com:443为自建的harbor仓库,你也可以起名为别的仓库,根据个人情况设置镜像名称。

然后将镜像上传到仓库docker push core.harbor.shell.com:443/library/nettools:v1

在用nerdctl下拉运行镜像

sudo nerdctl pull core.harbor.shell.com:443/library/nettools:v1

sudo nerdctl run -it --name nettools --network=host core.harbor.shell.com:443/library/nettools:v1

如果运行起来应该直接进入镜像的容器里了

也可以通过命令查看镜像运行情况

sudo nerdctl ps

//说心里话,docker现在使用第三方工具管理容器后,操作变得复杂多了,自我感觉不如以前可用docker命令操作一切方便,也许是我现在还没用熟悉,不过确实感觉怪怪的。

相关推荐
m4Rk_4 小时前
【论文阅读】Agent 记忆机制(54):MINJA——普通用户如何仅通过查询污染 Agent 的长期记忆
论文阅读·人工智能·学习·开源·github
新时代牛马4 小时前
CFS调度源码:从 schedule() 到pick_next_entity 的vruntime 公平
linux·运维·网络
@insist1234 小时前
系统集成项目管理工程师-采购、风险与干系人管理
网络·软考·系统集成项目管理工程师·软考中项·软件水平考试
动词ing4 小时前
【学习笔记】字符串(遍历+反转+替换+子串匹配+KMP)+题目解析
学习·算法
Syc1102g4 小时前
在 Linux CentOS 系统中设置静态 IP
linux·网络·计算机网络·个人开发
老王爱玩车4 小时前
关于函数递归的优缺点分析
开发语言·数据结构·学习·算法
Shadow(⊙o⊙)5 小时前
CMake实战Http+编译、链接选项的使用
网络·网络协议·http
春风解人意5 小时前
从零开始学习嵌入式P30----进程间的通信
c语言·学习
十正5 小时前
用 HTTP 条件请求把“强一致“和“低成本
网络·后端·http
日拱一卒的小田5 小时前
ZYNQ学习笔记3-ZYNQ的IIC控制器3
笔记·学习