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

相关推荐
YUS云生37 分钟前
大模型学习·第44天:Chroma向量数据库与RAG链式组装
数据库·学习
风曦Kisaki10 小时前
Kubernetes(K8s)笔记Day06: 持久化存储(emptyDir,hostPath,NFS),PV 和 PVC,StorageClass存储类
linux·运维·笔记·云原生·容器·kubernetes
abbgogo11 小时前
TCP/IP、OSI 与常见网络协议知识点总结
网络·网络协议·计算机网络
FungLeo12 小时前
Flutter 接入 Alice 调试浮窗:一个顶层 final 抢跑,把 release 网络整没了
网络·flutter
咸鱼翻身小阿橙13 小时前
现在这个四通道出现的问题
学习
abbgogo13 小时前
堆叠、DHCP 与链路聚合总结
网络·网络协议
Crazy________14 小时前
k8s部署若依微服务架构流程,v3.6.6
运维·云原生·容器·kubernetes·状态模式
云贝教育-郑老师15 小时前
OceanBase 是如何搞定海量数据分片(Sharding)的?
学习·oceanbase·dba
编程圈子15 小时前
电机驱动开发学习23. 保护体系与故障状态机
驱动开发·学习
xiaoxiangsiyan16 小时前
GitLab CI/CD 自托管(EE 企业版)+ Kubernetes Runner 集群 + ArgoCD(GitOps 部署)
运维·网络·ci/cd·容器·kubernetes·gitlab·argocd