news 2026/5/15 7:41:04

docker初步学习

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
docker初步学习

docker命令(镜像管理) 镜像属于是不可变基础设施(很少变基本不变)

从库中拉镜像: docker pull 镜像名 查看本地docker镜像 docker images 删除镜像: docker rmi 镜像名 (要求没人使用) 打包(把拉出的镜像打包到一个文件) docker save 镜像名 >文件名 dockeer save 镜像名 |gizp > 文件名 一条命令直接把镜像压缩 拓展,如果要把集群内所有镜像打包放到另一个集群 docker images |awl 'NR>1{print $1}' |> 文件名 scp 文件名 root@目标集群ip 转移至目标主机执行 docker load > 文件名 导入文件: docker load -i 文件名 docker load > 文件名 ​ 更改镜像名字: docker tar 原镜像名 目标镜像名 ​ 删掉没有名称或者不再使用的镜像: docker prune ​ ​ 拓展,如果要把集群内所有镜像打包放到另一个集群 docker images |awl 'NR>1{print $1}' |> 文件名 scp 文件名 root@目标集群ip 转移至目标主机执行 docker load > 文件名

docker命令(容器管理)

启动容器: docker run [选项] [镜像名] [shell命令] [参数] 一般是 docker run --name 名字 镜像名 -d -d是让程序后台运行 查看容器(镜像)信息可以看ip: docker inspect 进程名 退出容器但是不停止运行: ctrl+p+q 删除容器 docker rm 容器名/id 删除所有容器: docker rm -f 'docker ps -qa' qa表示的是显示集群里所有容器的id 容器的暂停: docker pause 容器名 容器暂停时仍然占用宿主机的磁盘空间 是暂停的容器恢复运行: docker unpause 容器名 容器的停止: docker stop 容器名 容器停止后不在占用程序不在占用宿主机的磁盘空间 进入容器进行操作: docker exec -it 容器名 bash docker exec -it 容器名 sh -it 是为了进入容器后有终端窗口进行交互 暴露端口给宿主机: docker run -d --name 名字 -P 镜像名 -P就是给宿主机容器的端口然宿主机也能查到 指定端口: docker run -d --name 名字 -p 宿主机端口:容器端口 镜像名 可以跟宿主机开机自启动: docker run -d --restart awalys --name 名字 镜像名 宿主机文件和容器文件相互复制: docker cp 文件 文件 哪个文件在前就是把哪个文件复制到另一个地方去 清理不再使用的容器: docker system prune
命令作用能否开启新终端退出后是否会停止容器
docker exec在运行的容器里开启一个新进程可以不会
docker attach连接到容器当前的主进程不能有可能会造成容器停止

docker名称空间(隔离)

user 每个容器有自己的用户 mount 每个容器都有自己的根目录 pid 进程 ipc 进程间通讯 network 网络 uts 主机名隔离

docker排错

docker ps 确认容器运行状态,端口映射和启动时间 docker inspect 看看容器内主进程的标准输出和错误日志 docker logs 看看容器的详细配置

镜像制作

第一种方式:

基于现有的容器 进入容器后修改配置修改成自己想要的模样 退出容器 执行命令: docker commit 容器名 镜像名

缺点:手工制作效率低,不能自动化

第二种方式:

dockerfile:

dockerfile指令:

FROM 指定基础镜像 RUN 执行命令 COPY 复制文件 ADD 加强版复制 WORKDIR 设置工作目录 ENV 设置环境变量 AGR 构建参数 EXPOSE 声明端口 CMD 默认命令 ENTRYPOINT 入口点 VLOUME 挂载卷 USER 切换用户 LABEL 添加元数据 HEALTHCHECK 健康检查
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/15 7:40:05

Claude 的下一代 Agent 架构:大脑与双手解耦(译文)

原文链接:https://www.anthropic.com/engineering/managed-agents Harnesses encode assumptions that go stale as models improve. Managed Agents—our hosted service for long-horizon agent work—is built around interfaces that stay stable as harnesses …

作者头像 李华
网站建设 2026/5/15 7:36:04

Godot 4.x 动态物理破碎插件:Voronoi算法实现网格实时切割

1. 项目概述与核心价值最近在捣鼓Godot引擎,想给3D游戏加点物理破坏效果,比如让一面墙被炮弹击中后,不是简单地消失,而是炸裂成大小不一的碎块飞散开来。自己从头写一个基于物理的破碎系统,既要处理网格切割、碰撞体生…

作者头像 李华
网站建设 2026/5/15 7:35:21

HFSS新手避坑指南:手把手教你仿真带孔金属箱的屏蔽效能(附模型文件)

HFSS新手避坑指南:手把手教你仿真带孔金属箱的屏蔽效能 第一次打开HFSS时,那种面对复杂界面的茫然感我至今记忆犹新。作为电磁仿真领域的标杆工具,HFSS的强大功能背后是陡峭的学习曲线。特别是当老板突然扔给你一个带孔金属箱的屏蔽效能评估任…

作者头像 李华
网站建设 2026/5/15 7:33:09

深入解析Synapto:轻量级实时数据同步引擎的设计与实战

1. 项目概述与核心价值 最近在折腾一个挺有意思的开源项目,叫 ramonlimaramos/synapto 。乍一看这个仓库名,你可能会有点懵,这“synapto”是个啥?是“突触”的变体吗?跟神经科学有关?其实,这个…

作者头像 李华
网站建设 2026/5/15 7:28:34

LT8302无光耦隔离反激转换器设计与优化

1. LT8302无光耦隔离反激转换器设计解析在隔离电源设计领域,传统方案通常依赖光耦器件实现反馈回路的电气隔离。这种设计虽然成熟,但存在明显的局限性——光耦的电流传输比(CTR)会随温度变化和老化而漂移,导致系统稳定…

作者头像 李华