从0开始的docker镜像制作-ubuntu22.04
从0开始的docker镜像制作-ubuntu22.04
- 一、拉取基础ubuntu22.04镜像
- 二、进入拉取的docker镜像中,下载自己需要的安装包
- 三、安装需要的系统软件
- 四、打包现有镜像为一个新的镜像
- 五、推送打包的镜像到私有docker服务器
- 1.编辑docker文件,使其允许http传输和对应的内网IP
- 2.重新加载docker和重启docker
- 3.登录私有服务器
- 4.给要推送的docker镜像打个tag
- 5.开始推送
一、拉取基础ubuntu22.04镜像
docker pull ubuntu:22.04

需要使用英伟达显卡驱动的,可以拉取对应的cuda版本
官方镜像链接
11.8的cuda
docker pull nvidia/cuda:11.8.0-cudnn8-runtime-ubuntu22.04

12.4的cuda
docker pull nvidia/cuda:12.4.1-cudnn-runtime-ubuntu22.04

二、进入拉取的docker镜像中,下载自己需要的安装包
这里以cuda12.4演示
运行一个基于 nvidia/cuda 的 Docker 容器,并且使用 GPU,使用 nvidia/cuda 镜像:
docker run -it --gpus all --name my-ubuntu22.04 nvidia/cuda:12.4.1-cudnn-runtime-ubuntu22.04 /bin/bash
docker run:创建一个新的容器。-it:分配一个伪终端并保持标准输入开放,这样你就可以与容器进行交互。--gpus all:允许容器访问所有可用的 GPU 设备。--name my-ubuntu22.04:为新容器指定一个名称,这里是my-ubuntu22.04。nvidia/cuda:12.4.1-cudnn-runtime-ubuntu22.04:指定基础镜像,带有 CUDA 和 cuDNN 的 NVIDIA 官方镜像。/bin/bash:容器启动后默认执行的命令,这里是启动一个 Bash 会话。
请注意,你的系统需要正确安装和配置 NVIDIA Docker 支持,以便 Docker 容器可以访问宿主机的 GPU。如果你还没有设置 NVIDIA Docker 支持,请参考之前的文章:ollama等的安装。

三、安装需要的系统软件
这里给出部分的软件包,可以按需下载
apt update #老规矩先更新
apt-get install -y sudo #安装sudo
sudo apt install iputils-ping # ping工具
sudo apt install net-tools # 软件包 其中包括ifconfig
sudo apt install vim # vim编辑器
sudo apt install openssh-client # ssh 连接其他服务器ssh
sudo apt install openssh-server # 其他服务器连接本机ssh
sudo apt install vsftpd # ftp
apt-get install -y git #git
sudo apt-get install git-lfs #git-lfs
安装完成后,输入:
exit
退出容器
四、打包现有镜像为一个新的镜像

docker commit -a "ddcloud <ddcloud@example.com>" -m "Added necessary packages and configurations" -p e8d89bc81ea7 ubuntu-cuda12.4:v1.0
-a, --author=“”: 作者信息,例如 “Your Name your.email@example.com”
-m, --message=“”: 提交信息,类似于 Git 的 commit message,用来描述你所做的更改。
-p, --pause=true: 提交时暂停容器。建议使用,以确保文件系统的一致性。

查看打包的镜像:
docker images

五、推送打包的镜像到私有docker服务器
1.编辑docker文件,使其允许http传输和对应的内网IP
vi /etc/docker/daemon.json

2.重新加载docker和重启docker
systemctl daemon-reload
systemctl restart docker
3.登录私有服务器
docker login 10.108.117.59:996

4.给要推送的docker镜像打个tag
docker tag ubuntu-cuda12.4:v1.0 10.108.117.59:996/ddcloud/ubuntu-cuda12.4:v1.0
5.开始推送
docker push 10.108.117.59:996/ddcloud/ubuntu-cuda12.4:v1.0

推送完成:

私有仓库显示如下:

相关文章:
从0开始的docker镜像制作-ubuntu22.04
从0开始的docker镜像制作-ubuntu22.04 一、拉取基础ubuntu22.04镜像二、进入拉取的docker镜像中,下载自己需要的安装包三、安装需要的系统软件四、打包现有镜像为一个新的镜像五、推送打包的镜像到私有docker服务器1.编辑docker文件,使其允许http传输和对…...
1Panel自建RustDesk服务器方案实现Windows远程macOS
文章目录 缘起RustDesk 基本信息实现原理中继服务器的配置建议 中继服务器自建指南准备服务器安装1Panel安装和配置 RustDesk 中继服务防火墙配置和安全组配置查看key下载&安装&配置客户端设置永久密码测试连接 macOS安装客户端提示finder写入失败hbbs和hbbr说明**hbbs…...
STM32完全学习——使用定时器1精确延时
一、定时器的相关配置 首先一定要是递减定时器,递增的不太行,控制的不够准确,其次在大于10微秒的延时是非常准确的,小于的话,就没有那没准,但是凑合能用。误差都在一个微秒以内。使用高级定时器也就是时钟…...
深度学习——损失函数汇总
1. 连续值损失函数 总结:主要使用胡贝儿损失函数,应用于连续数值的预测之间的误差损失,参考地址 import torch import torch.nn as nna = torch.tensor([[1, 2], [3, 4]], dtype=torch.float) b = torch.tensor([[3, 5], [8, 6]], dtype=torch.float)loss_fn1 = torch.nn.M…...
1、单片机寄存器-io输入实验笔记
1、硬件 时钟总线如下: PB端口挂载在AHB1总线上,因此要对该位进行使能。 引脚 LED0和LED1挂载在PB0和PB1上:推挽输出、100M、 上拉默认高电平,低电平点亮。 2、软件 位带操作 #ifndef _IO_BIT_H_ #define _IO_BIT_H_#define …...
记忆旅游系统|Java|SSM|VUE| 前后端分离
【技术栈】 1⃣️:架构: B/S、MVC 2⃣️:系统环境:Windowsh/Mac 3⃣️:开发环境:IDEA、JDK1.8、Maven、Mysql5.7 4⃣️:技术栈:Java、Mysql、SSM、Mybatis-Plus、VUE、jquery,html 5⃣️数据库可…...
CentOS7下的 OpenSSH 服务器和客户端
目录 1. 在 IP 地址为 192.168.98.11 的 Linux 主机上安装 OpenSSH 服务器; 2. 激活 OpenSSH 服务,并设置开机启动; 3. 在 IP 地址为 192.168.98.22 的 Linux 主机上安装 OpenSSH 客户端,使用客户端命令(ssh、 scp、…...
RabbitMQ基础篇之Java客户端 Topic交换机
文章目录 Topic 交换机概述 Routing Key 与 Binding Key优缺点及场景优点缺点应用场景 案例演示创建队列和交换机:消费者代码:消息发送代码:测试: 总结 Topic 交换机概述 路由机制: Topic交换机与Direct交换机类似&am…...
微服务-Sentinel新手入门指南
微服务为什么要使用流控降级组件 为了提高系统运行期间的稳定性和可用性 在微服务环境下,服务之间存在复杂的调用关系,单个服务的故障或过载可能会迅速影响到整个系统,导致服务雪崩效应。流控组件可以限制进入系统的流量,防止系…...
传统听写与大模型听写比对
在快节奏的现代生活中,听写技能仍然是学习语言和提升认知能力的重要环节。然而,传统的听写练习往往枯燥乏味,且效率不高。现在,随着人工智能技术的发展,大模型听写工具的问世,为传统听写带来了革命性的变革…...
http性能测试命令ab
华子目录 使用方法常用选项示例输出解读注意事项 在 Linux系统中, ab( ApacheBench)是一个用于 测试HTTP服务器性能的 工具。它是 Apache HTTP服务器项目的 一部分,专门设计用来模拟 多个用户对 服务器发起 并发请求&am…...
前端:轮播图常见的几种实现方式
目录 前言 一、轮播图是什么? 二、实现方法 1.使用纯 HTML、CSS、JavaScript 实现 2.使用组件来快速实现 总结 前言 在学习前端的过程中,总是有要实现轮播图效果的时候,本文就介绍了轮播图常见的几种实现方式。 一、轮播图是什么?…...
Pytest基础01: 入门demo脚本
目录 1 Pytest接口测试 1.1 最简单版hello world 1.2 pytest.ini 2 pytest兼容unittest 3 封装pytest执行入口 1 Pytest接口测试 Pyest是一个可以用于接口测试的强大框架,开源社区也有非常多的pytest插件。 按江湖传统,学习一个新语言或者新框架&…...
ruoyi 多租户 开启后针对某一条sql不适用多租户; 若依多租户sql规则修改
文章参考:多租户功能 | Ruoyi-TDesign 忽略租户 1.如果需要指定单独 SQL 不开启过滤,可在对应的 Mapper 接口添加如下忽略注解: InterceptorIgnore(tenantLine "true", dataPermission "false") 此处注意事项 使…...
driftingblues6靶机
打开靶场 查看页面源代码,最下面有一个注释,提供了一个网址 vmlist.github.io,我们去访问一下 这里是一个github页面,提供攻防虚拟机的下载,对我们解题并没有什么有用的信息,我们再去扫描端口 发现只有80端…...
Neo4j GDS 2.0 安装与配置
Neo4j GDS 2.0 安装与配置 GDS插件安装:Neo4j官方文档 1. GDS简介 Neo4j Graph Data Science (GDS) 库作为 Neo4j Graph Database 的插件提供。该插件需要安装到数据库中并在 Neo4j 配置中列入白名单。有两种主要方法可以实现这一点,我们将在本章中详…...
A*算法与人工势场法结合的路径规划(附MATLAB源码)
A*算法与人工势场法(APF)结合实现路径规划 路径规划是机器人、无人机及自动驾驶等领域中的一个重要问题。本文结合了经典的 A* 算法与 人工势场法(Artificial Potential Field, APF),实现了一种改进的路径规划方法。下…...
BootstrapTable处理表格
需求背景 历史项目使用 BootstrapTable 作为前端组件 应客户需要调整: 冻结前四列对于大文本文字显示部分内容,鼠标悬浮显示完整内容 冻结列 1、引入相关CSS,JS CSS <link rel"stylesheet" href"/css/bootstrap.min.css"> …...
UniApp 打开文件工具,获取文件类型,判断文件类型
注意:以下代码使用 typeScript 开发,如果想在 js 中使用,可参考 npm 已经发布的包:https://www.npmjs.com/package/uni-easy-file NPM 使用 如果想直接在 npm 项目中使用可以直接执行以下命令 npm i uni-easy-file然后直接使用 …...
docker-开源nocodb,使用已有数据库
使用已有数据库 创建本地数据库 数据库:nocodb 用户:nocodb 密码:xxxxxx修改docker-compose.yml 默认网关的 IP 地址是 172.17.0.1(适用于 bridge 网络模式)version: "2.1" services:nocodb:environment:…...
斯坦福+哈佛医学院:虚拟细胞图像生成基础模型
摘要 构建能在计算机中模拟细胞行为的虚拟细胞,是计算生物学的核心目标。本文提出1款图像生成模型CellFluxV2,可预测化学与遗传扰动下细胞形态的变化。CellFluxV2的核心创新在于,通过流匹配(flow matching)…...
win-acme证书自动续期架构深度解析:从故障排查到高可用部署
win-acme证书自动续期架构深度解析:从故障排查到高可用部署 【免费下载链接】win-acme Automate SSL/TLS certificates on Windows with ease 项目地址: https://gitcode.com/gh_mirrors/wi/win-acme 技术背景与挑战 在当今云原生和微服务架构盛行的时代&am…...
2026指纹浏览器技术升级:从环境隔离到风控对抗
2026 年,互联网平台的风控技术迎来质的飞跃,传统的 “IP 切换”“参数修改” 已无法应对多维度的检测体系。指纹浏览器作为多账号运营的核心支撑,其技术迭代速度远超以往 —— 从简单的参数修改,到内核级虚拟化;从单一…...
千问GEO生成式引擎优化技术方案
千问GEO生成式引擎优化技术方案 技术支持:拓世网络技术开发工作室 针对通义千问(Qwen)的生成式引擎优化(GEO)并非简单的关键词堆砌,而是一场关于“认知抢占”的技术战役。在2026年的当下,随着通…...
FixPlus-v1.56.148 一键擦除,会员功能直接解锁
核心功能 AI智能擦除技术可精准识别并移除照片中的干扰元素(如路人、杂物),自动填补背景,处理效果自然无痕。AI换衣功能支持智能服装替换与风格调整,为创意编辑提供更多可能。 操作便捷性 无需专业技巧,通…...
SpringAI实践(07) - 本地向量嵌入模型集成指南
SpringAI实践(07) - 本地向量嵌入模型集成指南 1.概述 本文档详细说明如何在 SpringBoot 应用中集成本地部署的 ONNX 格式向量嵌入模型(如 bge-small-zh),通过 spring-ai-starter-model-transformers 模块调用 ONNX …...
数字记忆保护新方案:GetQzonehistory让QQ空间数据备份不再困难
数字记忆保护新方案:GetQzonehistory让QQ空间数据备份不再困难 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 在数字时代,我们的个人记忆越来越多地以数据形式存…...
semi-utils:批量添加专业水印的智能解决方案
semi-utils:批量添加专业水印的智能解决方案 【免费下载链接】semi-utils 一个批量添加相机机型和拍摄参数的工具,后续「可能」添加其他功能。 项目地址: https://gitcode.com/gh_mirrors/se/semi-utils 作为一名摄影爱好者或专业摄影师ÿ…...
Awoo Installer:破解Switch游戏安装限制的高性能解决方案
Awoo Installer:破解Switch游戏安装限制的高性能解决方案 【免费下载链接】Awoo-Installer A No-Bullshit NSP, NSZ, XCI, and XCZ Installer for Nintendo Switch 项目地址: https://gitcode.com/gh_mirrors/aw/Awoo-Installer Awoo Installer是一款专为破解…...
YOLOv8实战:从数据增强到模型部署的完整Pipeline(附代码)
YOLOv8实战:从数据增强到模型部署的完整Pipeline(附代码) 计算机视觉领域的目标检测技术近年来取得了显著进展,其中YOLO系列算法因其高效性和准确性备受关注。作为该系列的最新成员,YOLOv8在保持实时检测速度的同时&am…...
