Creating container base image of CentOS

从零玩转 Linux:网络配置、软件安装及 Docker 实战 本文摘要:本文详细介绍了Linux系统管理、服务器配置及Docker容器化部署的实用指南。内容涵盖基础命令操作(如网络状态查看、文件管理、进程控制)、服务器网络配置(IP设置、时间同步、源更换)、Docker环境搭建与常用服务部署(Node-RED、RabbitMQ、Redis等),以及虚拟机环境配置(VMware/PVE)和系统维护技巧(日志清理、磁盘扩容)。重点提供了各类服务的安装脚本、配置模板和故障解决方案,适合运维人员快速查阅实现高效系统管理。文中还包含Windows环境下Redis/PM2自启动等 阅读详情

1. create rootfs tree:

# Create a folder for our new root structure
$ export centos_root='/centos_image/rootfs'
$ mkdir -p $centos_root
# initialize rpm database
$ rpm --root $centos_root --initdb
# download and install the centos-release package, it contains our repository sources
$ yum reinstall --downloadonly --downloaddir . centos-release
$ rpm --root $centos_root -ivh centos-release*.rpm
$ rpm --root $centos_root --import  $centos_root/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
# install yum without docs and install only the english language files during the process
$ yum -y --installroot=$centos_root --setopt=tsflags='nodocs' --setopt=override_install_langs=en_US.utf8 install yum
# configure yum to avoid installing of docs and other language files than english generally
$ sed -i "/distroverpkg=centos-release/a override_install_langs=en_US.utf8\ntsflags=nodocs" $centos_root/etc/yum.conf
# chroot to the environment and install some additional tools
$ cp /etc/resolv.conf $centos_root/etc
$ chroot $centos_root /bin/bash <<EOF
yum install -y procps-ng iputils
yum clean all
EOF
$ rm -f $centos_root/etc/resolv.conf
2. create docker image:

# install and enable docker
$ yum install -y docker
...
$ systemctl start docker
# create docker image
$ tar -C $centos_root -c . | docker import - centos
sha256:28843acfa85226385d2db0196db72465729db38088ea98751d4a5c3d4c85ccd
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              28843acfa852        11 seconds ago      287.7 MB
# run docker image
$ docker run --rm centos cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)

3. 最小docker image

https://blog.hypriot.com/post/build-smallest-possible-docker-image/

源地址:

https://www.sidorenko.io/post/2016/07/creating-container-base-image-of-centos/

https://resin.io/blog/building-arm-containers-on-any-x86-machine-even-dockerhub/

https://github.com/moul/docker-binfmt-register

https://wiki.debian.org/Arm64Qemu

从零部署悟空AICRM:Docker Compose全流程详解与通用排错指南 Docker作为容器化技术的核心,通过将应用及其依赖打包成标准化的单元,实现了环境的一致性与快速部署。其原理基于操作系统级虚拟化,利用命名空间和控制组实现资源隔离。在微服务架构中,Docker Compose的价值尤为突出,它能通过声明式YAML文件编排多容器应用,简化了前端、后端、数据库及缓存等组件的协同部署。这一技术极大地提升了开发与运维效率,广泛应用于Web服务、AI应用部署及持续集成等场景。本文以部署悟空AICRM这一智能CRM系统为例,深入解析其微服务架构下的Docker Compose配置,并分 阅读详情

相关推荐

【信息科学与工程学】【数据中心】第三十五篇 云计算数据中心的学科知识04

编号学科(课程)核心知识点在云计算/云存储/云网络/云安全/云MaaS中的作用代表教材/资料/论文 + 数学方程式列表工业界应用D1421​云原生数据库:TiDB​HTAP(混合事务/分析处理)、分布式SQL、水平扩展、强一致(Raft)、自动故障恢复、与MySQL兼容、TiFlash列式引擎提供弹性扩展的分布式数据库;支撑高并发在线交易与实时分析教材:《TiDB in Action》PingCAP(2020) 论文:《TiDB: A Raft-based HTAP Database》(2017)

weixin_49199313的博客 399

k8s 编排第一个POD 时候container creating 的问题

1: 今天开始k8s 的的实践啦: 示例:实现 运行在 Tomcat里的 Web app,JSP页面通过 JDBC 直接访问 MySQL数据库并展示数据。 需求:Web App 容器 MySQL容器,web--->mysql 需要把MySQL容器的IP地址通过环境变量的方式注入 Web App容器里,同时,需要将Web App容器的 8080端口映射宿主机的 8080...

shenghuiping2001的专栏 713

信息安全-入侵检测技术原理与应用

入侵检测技术原理与应用、入侵检测概述、入侵检测技术、入侵检测系统组成与分类、入侵检测系统主要产品与技术指标、入侵检测系统应用

我的个人博客 1万+

Kubernetes 创建pod一直处于ContainerCreating 状态解决过程

= = 。 遇到问题了又,创建的pods一直出于ContainerCreating状态。 说一下自己这次的解决流程。 首先去网上搜一搜这种类似问题的解决办法,然后结合自己的情况进行解决。 首先遇到的我遇到这个问题和网上一哥们的问题很相似,所以借鉴一下 https://blog.youkuaiyun.com/weixin_37480442/article/details/81949...

java_xth的博客 3662

STM32驱动电磁阀电路设计:从光耦选型到MOSFET驱动的实战解析

本文深入解析了STM32驱动24V电磁阀的完整电路设计,重点探讨了光耦选型与MOSFET驱动两大核心环节。针对电平转换与电气隔离需求,详细对比了EL357N与TLP2310等光耦在CTR、速度及耐压等关键参数上的差异与应用场景。同时,文章提供了MOSFET关键参数解读、驱动电路优化方案(如推挽驱动)以及完整的PCB布局、电源处理与调试避坑指南,旨在帮助工程师构建稳定可靠的工业控制电路。

weixin_29184371的博客 233

xenomai内核解析--嵌入式实时linux概述

Linux系统作为一个GPOS(通用操作系统)发展至今已经非常成熟可靠了,并且由于遵循GPL协议,开放所有系统源代码,非常易于裁剪。更重要的是,与其他开源的GPOS或RTOS相比,Linux系统支持多种处理器、开发板,提供多种软件开发工具,同时Linux系统对网络和图形界面的支持非常出色。显然,选择Linux操作系统在产品的开发周期和成本控制方面都有巨大优势。 虽然Linux系统功能强大、实用性强...

wsg1100 3699

k8s pod启动报错“ContainerCreating”

背景:我在部署一个nfs storage class的时候启动deploy时候发现pod起不来,一直显示ContainerCreating 看了下pod的日志 重点提示在events这里,这里提示kubelet会去挂载一个nfs目录到本地,但是mount抛出了fs type的error,也就是说mount动作没有办法完成。 所以,我们需要上到node节点机器上看看是否是mount有问题,经过排查,确实是没有办法挂载nfs目录,原因是node上没有安装nfs-utils这个包。 尝试安..

xfun的博客 1622

Dirsearch的下载、安装和使用(全)

Dirsearch工具的下载、安装和使用,超详细超全面

weixin_68416970的博客 1万+

Kubernetes创建pod一直处于ContainerCreating排查和解决

用k8s创建完pod后,发现无法访问demo应用,查了一下pods状态,发现都在containercreationg状态中。 [root@localhost ca]# kubectl get pods NAME READY STATUS RESTARTS AGE mysql-1kr8z ...

小么飞刀的博客 2297

STM32G0定时器中断实战:HAL库配置TIM2实现精准1秒LED闪烁(附完整代码)

本文深入解析了STM32G0系列微控制器中定时器中断的配置与应用,重点介绍了如何使用HAL库配置TIM2实现精准的1秒LED闪烁。通过详细讲解时钟树分析、预分频系数与自动重装载寄存器的计算原理,并结合CubeMX图形化配置与完整代码示例,帮助开发者从底层理解定时器工作机制,掌握可复用的工程化配置方法。

weixin_29194817的博客 252

MounRiver Studio(MRS)使用技巧:添加头文件目录;增加代码分组

MounRiver Studio(MRS)使用技巧:添加头文件目录

cheng___yi的博客 1808

Pod 一直处于 ContainerCreating 或 Waiting 状态

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录可能原因排查方法检查 Pod 配置检查 Volume 挂载情况1. Pod 漂移导致未正常解挂磁盘问题分析造成影响2. 命中 K8S 挂载 configmap/secret 时 subpath 的 bug检查磁盘空间是否不足检查节点内存是否碎片化检查 limit 设置现象描述解决思路检查拉取镜像是否失败检查 CNI 网络是否错误检查 controller-manager 是否异常检查节点已有 docker检查是否存在同名容器 可.

潇潇雨歇 1万+

YOLO26改进策略【卷积层】| HWD,引入`Haar小波变换`到下采样模块中,减少信息丢失

本文记录的是。传统的卷积神经网络中常用的最大池化平均池化和步长为2的卷积等操作进行下采样可能会导致信息丢失,为了解决信息丢失问题,HWD作者受无损信息变换方法的启发,引入Haar小波变换到下采样模块中,

Limiiiing的博客 346

docker+k8s+centos10

本文探讨了容器化部署工具的选择与使用经验。作者通过Puppet部署工具的失败案例,指出部署工具应简化流程而非增加复杂度,最终采用简单shell脚本替代。文章对比了Docker与Kubernetes的优缺点:Docker轻量易用适合开发环境,而Kubernetes集群运维复杂、学习成本高,生产环境需谨慎评估。详细介绍了CentOS 7/10环境下Docker的安装配置、私有镜像仓库搭建,以及Kubernetes集群部署流程,包括网络插件Calico的安装验证。最后强调生产环境应采用独立试验田验证新技术,避免直

yanghuashuiyue的专栏 869

CANoe中如何仿真报文的CRC和Counter,告诉你三种方法皆可实现

CANoe中如何仿真报文的CRC和Counter

蚂蚁小兵 5275

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Gitlab+Jenkins+Docker+Harbor+K8s集群搭建CICD平台

Gitlab+Jenkins+Docker+Harbor+K8s集群搭建CICD平台

FamineFree的博客 6088

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Docker镜像容器卷清理指南:释放磁盘空间的工程化实践

Docker镜像、容器和卷是容器化环境的三大核心资源,其生命周期管理直接影响系统稳定性与开发效率。镜像作为只读模板,需区分dangling镜像与带标签镜像以避免误删;容器作为运行实例,exited状态易堆积日志并拖慢命令响应;卷则独立于容器存在,具有强持久性但缺乏可见性,极易成为‘数字地窖’。科学清理不是简单执行docker system prune,而是基于资源本质差异实施分层策略——先查后删、留痕可逆、按需裁剪。该方法广泛适用于本地开发、CI/CD流水线及测试环境运维,尤其能解决磁盘爆满、启动卡顿、日志

weixin_34228387的博客 438

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Docker 容器技术从入门到实战:容器、网络、存储与监控全解析

> **摘要**:本文是 Docker 系列教程的容器与编排实战篇,系统讲解容器的核心操作、资源限制、网络通信、数据存储、监控日志,以及 Docker Compose 与图形化管理工具的使用。通过大量命令行示例与实战项目(WordPress、Ghost 等),帮助读者从零掌握 Docker 容器化应用的部署与管理技能。

2403_88632628的博客 234

HyperLedger FabricV2.3 Raft单机集群部署

目录 云主机配置 依赖环境配置 部署步骤 0.更新yum 1.安装golang 2.安装docker 3.安装docker-compose 4.安装git 5.安装java 6.防火墙配置 7.网络配置 fabric资源规划 0.修改hosts文件 1.部署节点端口分配 2.官方测试网络demo测试 创建工作目录 3.fabricraft集群环境搭建 3.1编写配置文件 3.2生成证书以及通道信息 3.3编写docker-compose.yaml...

qq_36807862的博客 1522

liunx版本的

services:ports:volumes:network_mode: "host" # 添加此行(必须)kibana:ports:ELASTICSEARCH_HOSTS: http://192.168.1.145:9200 # 具体ip(必须)network_mode: "host" # # 添加此行(必须)

m0_45209551的博客 1192

Podman Compose 根模式实战:零 root 权限下的安全容器编排

容器编排是现代开发环境的核心能力,其本质是通过声明式配置实现服务的自动化部署与协同。Podman Compose 以 daemonless 架构重构了这一过程,依托 user namespace、rootless 运行和 Pod 模型,在不依赖守护进程的前提下,保障容器进程归属开发者 UID、数据路径可审计、权限边界清晰可控。这种设计天然契合金融、医疗等强合规场景的技术治理要求,也适用于共享服务器、跳板机、SELinux 环境等受限基础设施。相比 Docker Compose,它牺牲了 Swarm/K8s

weixin_33851429的博客 405

阿里云ECS部署Langchain-Chatchat+ChatGLM3-6B全链路指南

RAG(检索增强生成)是当前大模型落地的核心范式,其工程实现依赖框架、模型与基础设施的深度协同。Langchain-Chatchat作为主流开源RAG框架,需与ChatGLM3-6B等国产大模型精准适配,而真实生产环境(如阿里云ECS)中的Python版本冲突、CUDA驱动不匹配、Docker运行时差异及向量库持久化缺陷,常导致‘本地能跑、线上崩盘’。本文聚焦RAG系统在云服务器上的可复现部署,详解Python3.11编译、CUDA 12.1与PyTorch三角对齐、ChatGLM3-6B INT4量化加载

weixin_34060741的博客 355

AI编程工具信创环境适配指南:从Codex到国产化部署的完整实践

信创环境下的AI编程工具适配实践 本文记录了金融科技公司在信创改造过程中,研发团队从x86架构迁移到国产化平台并适配AI编程工具的全流程。 核心挑战: 技术栈连锁替换:CPU架构变更引发操作系统、开发工具链的全面重构 国产CPU生态差异:四种主流架构(x86兼容/ARM64/自主指令集/RISC-V)各有适配难点 操作系统兼容性问题:统信UOS、麒麟、openEuler等国产系统的基础软件版本滞后 二进制包架构锁定:大量原生模块需重新编译 加速硬件碎片化:昇腾NPU、寒武纪MLU等不同硬件需单独适配 解决方

热爱技术与前沿创新,深耕科技领域,在科创中精进自我;探索技术乐趣,分享技术干货与成长心得,以技术为伴,热爱生活,在科创与生活中双向成长。 195

Docker - 容器的备份与恢复,数据安全保障

Docker 容器的数据安全,绝非一个命令所能承载。它是一个分层防御、职责分离、持续验证的系统工程。本文所阐述的实践,可归纳为坚不可摧的“铁三角”:fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;命名卷 + 绑定挂载H2/PostgreSQL 备份服务镜像仓库 + 离线包持久化层备份策略应用层基础设施层加密存储定期校验自动告警。

千淘万漉虽辛苦,吹尽狂沙始到金 6718

关于节点出现一直处于ContainerCreating

kubelet误报内存压力(实际内存使用率很小)->节点被打污点->节点上pod处于驱逐状态->重启kubelet会恢复。kubectl describe pod pod名称 -n 命名空间。4.这时主要是发生了内存泄漏 需要重启node节点试一下。看是否解决 如果还没有解决 需要重启node节点。1.查看pod的具体信息。2.查到具体的报错为。

weixin_55752391的博客 1162

k8s出现ContainerCreating,问题解决

查看跑起来的容器有哪些 kubectl get pod --all-namespaces 查看具体的容器详情 kubectl describe pod 容器name --namespace=name空间 kubectl describe pod peer0-org1-5d4c9bbb8f-d9phj --namespace=net

张永杰的博客 1万+
上一篇: play with docker multi-host networking
下一篇: Build executable with ld
Xalloc
博客等级 码龄16年 25粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值