docker结构与常用命令
docker结构:
docker包括三个基本概念:
1. 镜像(image): 相当于一个root文件系统,如ubuntu16.04包含了一套Ubuntu16.04最小系统的root文件系统
2. 容器(container): 镜像和容器的关系,就像面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建,启动,停止,删除,暂停等
3. 仓库(repository): 仓库可看着一个代码控制中心,用来保存镜像
docker使用客户端-服务端(c/s)架构模式,使用远程api来管理和创建docker容器
docker容器通过docker镜像来创建
容器和镜像的关系类似于面向对象编程中的对象和
docker命令:
查看docker镜像:
1 | sudo docker images |
删除镜像:
1 | sudo docker rmi 镜像名 |
强制删除镜像
1 | docker rmi -f 镜像的 id |
运行docker里面的ubuntu镜像(会创建新的容器):
1 | sudo docker run -t -i ubuntu:16.04 /bin/bash |
-i: 交互式操作
-t: 终端
-d: 默认不会进入容器
ubuntu:16.04:这是指用ubuntu16.04版本镜像文件为基础启动容器
/bin/bash: 放在镜像名后的是命令,这里我们希望有个交互式shell,因此用的是/bin/bash
启动容器
1 | sudo docker start 容器id |
通过容器id进入该容器的终端
1 | sudo docker exec -it 容器id /bin/bash<br>或者<br>sudo docker attach 容器id |
停止容器
1 | sudo docker stop 容器 id |
删除容器:
1 | sudo docker rm -f 容器id |
如何从宿机或者docker移动文件
1.获取docker的短id或者名字:
1 | sudo docker ps -a |
2.然后根据短id或者名字拿到id全称
1 | sudo docker inspect -f '{{.Id}}' 名字或者短id |
3.移动
1 | sudo docker cp 本地文件 长id:路径 |
创建镜像
1. 用容器作为镜像
1 | sudo docker commit 容器 id 新镜像名字(自己取) |
用这个镜像启动一个容器
1 | sudo docker run - it 新镜像的名字 / bin / bash |
自己制作镜像好处:可以在镜像中把软件自己装好,不用每个容器都装一次
分类:
docker
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】