前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用k8s搭建一个带有文件管理功能的私有yum源

用k8s搭建一个带有文件管理功能的私有yum源

作者头像
runzhliu
修改2022-06-07 08:51:29
5560
修改2022-06-07 08:51:29
举报
文章被收录于专栏:容器计算容器计算

Overview

项目地址在 https://github.com/runzhliu/yum-with-browser

目的是解决在k8s集群里一些yum源的问题。

为什么会有这个问题呢,因为通常来说k8s集群都只有集群网络,并不能直接通Internet,甚至是公司的LAN都不一定能通。所以有些同学在使用k8s部署应用的时候,尤其是把k8s当成虚拟机来用的同学,会觉得装软件很麻烦,因为通常的流程可能是只能在Dockerfile里就把需要安装的软件安装好,比如vim, curl之类的。

这个项目没有什么代码,仅仅是通过部署一个k8s工作负载,来部署一个私有化的yum源,并且提供文件浏览器的管理,这真的很重要,相比于常见的用Nginx 或者httpd来创建一个私有化的源,有文件管理器的web浏览器实在是太好了(当然前提是至少能够通过Nodeport把服务暴露出来)。

部署

部署很简单,我甚至只写了一个Pod,Deployment都懒得搞了,所有的逻辑都在Dockerfile

代码语言:javascript
复制
kubectl run yum-file-browser --image=runzhliu/filebrowser --image-pull-policy=Always
kubectl expose po yum-with-browser --name=yum-with-browser --port=80 --target-port=80 --type=NodePort
kubectl expose po yum-with-browser --name=yum --port=80 --target-port=8080

cat >> /etc/yum.repos.d/sre.repo <<EOF
[sre]
name=sre yum repos
baseurl=http://yum
enable=1
gpgcheck=0
EOF
# 上传一个rpm包
yum --disablerepo=* --enablerepo=sre install vim -y

Notes

当然不是一个这样的仓库就能够允许在容器里装什么软件都可以的,这里跟容器内本身的基础镜像的Linux版本,内核版本,以及基础镜像里已经有的软件有关系。

重新编译镜像可以通过下面的命令来实现。

代码语言:javascript
复制
DOCKER_BUILDKIT=1 docker build -t runzhliu/yum-with-browser . --progress=plain
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Overview
  • 部署
  • Notes
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档