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

相关推荐
爱奥尼欧12 分钟前
【daily practice】最长数字串怎么找?岛屿数量如何沉岛秒数?六棍拼两三角形有几种验法?(5.字符串中找出连续最长的数字串、岛屿数量、拼三角)
笔记·学习
不可求~17 分钟前
调用 GPT、Claude、Gemini API 报错怎么办:一套通用排查清单
网络·chrome·gpt
XR12345678819 分钟前
高校AI智算中心网络:RoCE优化与一体化交付怎么选
网络·人工智能
Bernice橘子20 分钟前
职场英语学习计划Day040
学习
gwf21620 分钟前
RDMA迈向400G/800G:超宽带网络的技术挑战与突破 —— 从芯片架构到RTL实现的深度解析
网络·rdma·dpu·高性能网络·800g·智能网卡·rtl验证
苍狗T1 小时前
K8s 集群实战:基于 Harbor 私有仓库 + cri‑dockerd 完整部署
linux·运维·云原生·容器·kubernetes
明王明王1 小时前
从零搭建一个单节点 K8S 可观测实验室(十二):告警与故障注入——从 Pending、Firing 到故障恢复
云原生·容器·kubernetes
吃不吃早饭1 小时前
RHEL9 搭建 Harbor 私有仓库与 Ansible 自动化部署 Kubernetes 运行环境完整实践
kubernetes·自动化·ansible
2601_965798471 小时前
Evently Theme Setup Guide: Fast Conference, Meetup & Summit Architecture
服务器·网络·数据库
橙橙笔记2 小时前
Python学习第三部分
开发语言·python·学习