极速掌控Docker全链路:容器操控+Nginx主页改造+BusyBox工具实践+腾讯云仓库部署​

极速掌控Docker全链路:容器操控+Nginx主页改造+BusyBox工具实践+腾讯云仓库部署​

本篇摘要

本文围绕Docker实操展开,介绍docker ps容器命令用法,涵盖Nginx镜像获取、运行及主页修改,阐述BusyBox工具特性、安装卸载与运行,还涉及镜像拉取推送至Hub及腾讯云仓库的创建、操作,包含丰富实践案例。

在这里插入图片描述
欢迎拜访:点击进入博主主页

本篇主题:Docker之容器操控+Nginx主页改造+BusyBox工具实践+腾讯云仓库部署​全方位解析

制作日期:2025.09.16

隶属专栏:
点击进入所属Docker专栏

一.Docker镜像仓库之容器命令之Docker ps

用法:

  1. 功能:列出容器(正在运行或者曾经运行过的)。
  2. 语法docker ps [OPTIONS]
  3. 别名
  • docker container ls
  • docker container list
  • docker container ps
  1. 关键参数
  • -a:显示所有容器,包括未运行的。
  • -f:根据条件过滤后只显示的内容。
过滤字段说明示例
name按容器名称过滤-f name=mycentos
id按容器ID过滤-f id=abc123...
status按状态过滤(如 runningexited-f status=running
ancestor按镜像名称/ID过滤-f ancestor=mycentos:latest
label按标签过滤-f label=env=prod
  • --format:指定返回值的模板文件(如 json 或 table)。
  • -l:显示最新(latest)的容器。
  • -n:列出最近创建的 n 个容器。
  • --no-trunc:不截断输出。
  • -q:静默模式,只显示容器编号。
  • -s:显示总的文件大小。

操作演示

-a:

在这里插入图片描述


-f:

在这里插入图片描述

-format(默认是table格式):

在这里插入图片描述

-l -n

在这里插入图片描述
在这里插入图片描述


--no-trunc -q -s:

在这里插入图片描述
  • 只显示缩短id或者显示文件大小。
在这里插入图片描述
  • id变长了。

二.nginx镜像获取并修改主页

首先拉取镜像然后后台运行:

在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
  • 成功被拉取,对应的镜像查看详细情况,可以看到默认容器开房的是80端口。

进行前台运行:

在这里插入图片描述


在这里插入图片描述
  • 成功能访问,但是前台被占用了。

下面ctrl c挂掉前台程序:

在这里插入图片描述
  • 发现对应的nginx容器也挂了,无法访问。

进行后台运行

在这里插入图片描述


在这里插入图片描述
  • 无论如何ctrl c都能访问。
在这里插入图片描述
  • 端口也成功映射了。

进行bash终端运行

在这里插入图片描述
  • 容器里的bash也是可以使用一些功能,需要手动运行nginx。
在这里插入图片描述


在这里插入图片描述
  • 发发现无论如何ctrl c,网页都是能访问的。

下面进行主页修改(找到对应html完成修改):

在这里插入图片描述


在这里插入图片描述
  • 符合预期。

总结下:

这里打开的Docker镜像相当于一个main函数,然后就比如似乎nginx,它运行的时候就可以理解成一个网站,可以选择前台 后台运行,如果是bash运行,进入这个容器里面,就会开一个终端,可以进行一些命令的基础交互,而需要手动输入nginx完成运行,如果启动后,默认也是后台运行,也就是说还可以从这个终端继续输入命令等。

三.安转busybox并完成hub中拉取镜像及推送

Busybox 基础知识

  1. 定义与功能
  • BusyBox 是集成三百多个最常用 Linux 命令和工具的软件。
  • 包含简单工具(如 ls、cat、echo 等)与复杂工具(如 grep、find、mount、telnet 等),还集成 Linux 系统自带 shell、http 服务器和 telnet 服务器 。
  • 因功能丰富且体积小(仅 1M 左右),被称为 Linux 工具里的瑞士军刀。
  1. 海外带宽相关:海外带宽较小,适合拉取该镜像推送到自己的仓库。

简单总结下:就是一个集成很多linux指令的一个工具包。

Busybox 卸载

  1. Ubuntu 卸载:使用命令 apt --purge autoremove busybox
  2. CentOS 卸载:清理对应目录即可(文档未给出具体命令,需手动清理相关目录)。

Busybox 安装

  1. Ubuntu 安装:使用命令 apt install -y busybox
  2. CentOS 安装
  • 第一步:通过 wget https://busybox.net/downloads/binaries/1.28.1-defconfig-multiarch/busybox-x86_64 --no-check-certificate 下载。
  • 第二步:执行 mv busybox-x86_64 busybox 重命名。
  • 第三步:执行 chmod +x busybox 赋予权限。
  • 第四步:执行 ./busybox 运行。

下面演示下运行(centos+ubuntu)

centos

因为它会爬取到当前目录,因此先创建目录,然后进行爬取:

在这里插入图片描述

给它加上对应执行权限:

在这里插入图片描述


下面看下支持的指令:

在这里插入图片描述

运行测试效果:

在这里插入图片描述

ubuntu

先删除然后再安装:

在这里插入图片描述


进行对应测试:

在这里插入图片描述
  • 这里发现还是和对应的centos的有区别的。

镜像测试

首先进行pull:

在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
  • 这里说过曾经拉取过了。
在这里插入图片描述


下面进行创建仓库,起别名完成推送:

在这里插入图片描述
在这里插入图片描述
  • 最后推送过去就能看到内容(这里也推多个,然后tag不同,直接使用 docker push 仓库位置 -a即可)。

四.基于腾讯云创建镜像仓库并完成仓库操作

首先登录官网: 腾讯云官网

搜索进行镜像服务进行进去:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

先搞一个命名空间:

在这里插入图片描述

这里先设置成私有,方便后期测试:

在这里插入图片描述

可以看到提供了对应的快捷指令,下面进行操作:

在这里插入图片描述

先进行linux对应账号登录:

在这里插入图片描述


找到对应镜像来完成推送:

在这里插入图片描述

进行打标签:

在这里插入图片描述


在这里插入图片描述
  • 这里打上标签是方便linux对应推送的时候方便识别位置。
在这里插入图片描述
  • 成功完成推送。

检查下对应仓库:

在这里插入图片描述

下面拉取下:

在这里插入图片描述
  • 正常拉取。

下面退出在测试下pull:

在这里插入图片描述
  • 发现需要重新登录,因为设置的是私有仓库。

五.基于镜像方面实际应用总结

  1. 一般大型公司有专门镜像制作组织,会选取对应系统版本作基础镜像,如华为选欧拉、腾讯选TLinux。
  2. 大型公司制作的镜像经严格安全扫描,作为基础组件供各部门,避免因原系统不维护无法使用的问题。
  3. 一般公司通常也认可镜像基础版本,个人在选择基础镜像时不用太纠结。

六.本篇小结

本篇通过Docker容器命令、Nginx应用、BusyBox工具及云仓库操作等实践,掌握Docker镜像管理、容器运行及私有仓库使用,熟悉从基础操作到云端部署的全流程。

Read more

【Linux/C++多进程篇(一) 】一个变两个?揭秘 C/C++ 程序中神奇的“分身术”

【Linux/C++多进程篇(一) 】一个变两个?揭秘 C/C++ 程序中神奇的“分身术”

⭐️在这个怀疑的年代,我们依然需要信仰。 个人主页:YYYing. ⭐️Linux/C++进阶系列专栏:【从零开始的linux/c++进阶编程】 ⭐️其他专栏:【linux基础】【数据结构与算法】【从零开始的计算机网络学习】 系列上期内容:【Linux/C++文件篇(一) 】标准I/O与文件I/O基础  系列下期内容:【Linux/C++多进程篇(二) 】万字解析linux系统编程之进程间通信 (IPC) 目录 前言:        多进程理论基础 一、为什么要引入多进程 二、多进程相关概念 三、进程的内存管理 四、进程与程序的区别 五、进程的种类 六、进程PID 七、特殊的进程 八、linux中有关进程的指令 九、进程状态的切换

By Ne0inhk
【Linux】线程池(一)C++ 手写线程池:基于策略模式实现高性能日志模块

【Linux】线程池(一)C++ 手写线程池:基于策略模式实现高性能日志模块

文章目录 * 池化技术 * 线程池的日志模块 * 日志与策略模式 * 日志模块 * 两个核心问题 * 设计文件等级 * 刷新策略 * 获取日志时间 * logger类实现 * 内部类LogMessage实现 * 日志刷新流程图及源码 池化技术 池化技术可以减少很多的底层重复工作,例如创建进程、线程、申请内存空间时的系统调用和初始化工作,例如线程池,先预先创建好一些线程,当任务到来时直接将预先创建好的线程唤醒去处理任务,效率会远远高于任务到来时临时创建线程。例如内存池,但我们要用1mb空间时内存池会一次性申请20mb空间,效率会远远高于用多少空间申请多少空间(申请空间会调用系统调用)。 线程池是执行流级别的池化技术,STL中的空间配置器和内存池是内存块管理级别的池化技术。 线程池的日志模块 下⾯开始,我们结合我们之前所做的所有封装,进⾏⼀个线程池的设计。在写之前,我们要做如下准备。 * 准备线程的封装 * 准备锁和条件变量的封装 * 引⼊日志,对线程进⾏封装 日志与策略

By Ne0inhk
【C++初阶】C++入门相关知识(2):输入输出 & 缺省参数 & 函数重载

【C++初阶】C++入门相关知识(2):输入输出 & 缺省参数 & 函数重载

🎈主页传送门:良木生香 🔥个人专栏:《C语言》 《数据结构-初阶》 《程序设计》《鼠鼠的C++学习之路》 🌟人为善,福随未至,祸已远行;人为恶,祸虽未至,福已远离 上期回顾:在上一篇文章中,我们对C++进行了初步的认识,学习了C++的发展历史,第一个C++程序以及命名空间,我们知道,C++的出现就是为了改进和完善C语言的不足,使得程序更加高效,程序员编写起来更加方便快捷,那么本篇文章我们继续往下认识C++的入门相关知识 目录 一、C++的输入&输出 1.1、核心载体:头文件 1.2、核心的IO对象:cin与cout 1.2.1、std::cin 标准输入流 1.

By Ne0inhk
二叉搜索树深度解析:从原理实现到算法应用----《Hello C++ Wrold!》(18)--(C/C++)

二叉搜索树深度解析:从原理实现到算法应用----《Hello C++ Wrold!》(18)--(C/C++)

文章目录 * 前言 * 二叉搜索树(二叉排序树或二叉查找树) * 二叉搜索树的模拟实现 * 二叉搜索树和有序数组二分查找的比较 * 两个搜索模型 * 作业部分 前言 二叉搜索树(Binary Search Tree,简称 BST)作为一种重要的树形数据结构,在计算机科学领域有着广泛的应用。它凭借其基于键值的有序性,能够高效地支持数据的插入、删除和查找等操作,是许多复杂算法和系统的基础组件。 本文将围绕二叉搜索树展开全面而深入的探讨。首先,我们将从其核心定义和关键性质出发,帮助读者建立对二叉搜索树的基本认知,包括其通过中序遍历可得到升序序列这一重要特性。随后,详细剖析二叉搜索树的各项基本操作,如插入、查找、删除等,并通过 C++ 代码实现进行具体演示,同时对比递归与非递归实现方式的异同。 此外,我们还将对二叉搜索树与有序数组的二分查找进行对比分析,明确各自的优势与局限。最后,结合一系列经典的算法题目,如二叉搜索树与双向链表的转换、根据遍历序列构造二叉树、二叉树的非递归遍历等,展示二叉搜索树在实际问题中的应用,帮助读者巩固所学知识,提升解决复杂问题的

By Ne0inhk