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命令操作一切方便,也许是我现在还没用熟悉,不过确实感觉怪怪的。

相关推荐
星恒随风7 小时前
从零开始理解 CNN(上):为什么图像任务需要卷积神经网络?
人工智能·笔记·神经网络·学习·cnn
星恒随风7 小时前
从零开始理解 CNN(下):拆开卷积层、池化层、通道数和训练流程
人工智能·笔记·深度学习·神经网络·学习·cnn
穗余7 小时前
2026 AI x Web3 School共学营笔记-Day9-隐私是需要理解的基础能力
学习·安全·架构
Ws_14 小时前
C#学习 Day2
开发语言·学习·c#
神谕的祝福15 小时前
comfyui从0到1开始学习-第三讲生图与降噪实验
学习
星夜夏空9915 小时前
STM32单片机学习(32) —— ADC
stm32·单片机·学习
仰泳之鹅16 小时前
【物联网】使用MQTTX与OneNET云平台进行模拟MQTT协议通信
网络·物联网
愚者Pro18 小时前
Flutter Widget组件学习(专为 Uniapp 转 Flutter 定制)
vue.js·学习·flutter·uni-app
宋浮檀s18 小时前
应急响应——恶意流量&攻击行为识别
linux·运维·网络·网络安全·应急响应
yychen_java18 小时前
6G移动通信:当网络开始“思考”与“感知”
网络·人工智能