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

相关推荐
@insist1231 分钟前
信息安全工程师-入侵检测核心技术、APT 应对与工程实践
网络·安全·软考·信息安全工程师·软件水平考试
xuhaoyu_cpp_java20 分钟前
Spring学习(一)
java·经验分享·笔记·学习·spring
CDN3601 小时前
[硬核] 你的DNS正在“裸奔”?用Python手撕DNS劫持与隧道检测逻辑
开发语言·网络·python
minglie11 小时前
剩余定理的电枢语言描述
学习
凯瑟琳.奥古斯特1 小时前
DNS解析全流程详解
网络·网络协议
Yupureki1 小时前
《Linux网络编程》5.HTTPS协议
linux·网络·https
我是发哥哈2 小时前
深度评测:五款主流AI培训平台的课程交付能力对比
大数据·人工智能·学习·机器学习·ai·chatgpt
摇滚侠2 小时前
DSL 学习 ElasticSearch 主要就是学习 DSL 查询语言
学习·elasticsearch·jenkins
H_z_q24012 小时前
HCIP的stp(生成树 )1
网络
胡小禾2 小时前
K8S常识-如何指定只更新一个deployment中的某一个实例
云原生·容器·kubernetes