2023.2.10学习记录Docker容器

Docker  必须跑在Linux内核上  

镜像是一个轻量级可执行的独立软件包

新建一个docker容器只需要几秒钟

2023.2.10学习记录Docker容器_第1张图片

 Docker常用命令

2023.2.10学习记录Docker容器_第2张图片

启动类命令 镜像命令  容器命令

docker images          docker search --limit 5 redis    docker pull redis:6.0.8

docker system df 查看镜像/容器/数据卷所占的空间

删除镜像  rmi

 删除所有镜像 docker rmi -f S(docker images -qa)

每个容器其实就是一个简易版的Linux环境

  • 新建+启动容器
    • docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    • 例子:docker run -it --name=myu1 ubuntu bash
    • 上面这个例子这条命令可以交互式运行一个钨棒图容器 名字取为 myu1

2023.2.10学习记录Docker容器_第3张图片  -i  是interactive   t是tty

-it可以交互式运行  表示我在centos中使用docker容器跑了一个Ubantu

2023.2.10学习记录Docker容器_第4张图片

docker ps 可以查看什么时候启动过什么容器 罗列出正在运行的容器实例

 从容器中退出 exit 容器会停止     ctrl +p+q退出但容器不停止

注意 rmi是删除镜像   而 rm是删除容器    大概是removeImage和remove的意思

守护式容器:

使用镜像centos:latest以后台模式启动一个容器

docker run -d centos   很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程.

最佳的解决方案是,将你要运行的程序以前台进程的形式运行,

常见就是命令行模式,表示我还有交互操作,别中断,O(∩_∩)O哈哈~

查看容器日志:docker logs 容器ID

重新进入正在运行的容器实例

2023.2.10学习记录Docker容器_第5张图片

 使用exec重新进入容器的bash后   使用exit退出是不会终止该容器的

如果使用 attach进入的话  使用exit退出是会终止该容器的 尽量别用

对比 新技术  云原生  容器化

2023.2.10学习记录Docker容器_第6张图片

可以将容器上的文件拷贝到主机路径中

还可以将容器中的内容打包导入导出到主机上

联合文件系统  镜像分层的意义是下载简单  可复用

镜像分层最大的一个好处就是共享资源,方便复制迁移,就是为了复用。

比如说有多个镜像都从相同的 base 镜像构建而来,那么 Docker Host 只需在磁盘上保存一份 base 镜像;同时内存中也只需加载一份 base 镜像,就可以为所有容器服务了。而且镜像的每一层都可以被共享。

关于容器层与镜像层

2023.2.10学习记录Docker容器_第7张图片

 

 可以将容器提交为镜像:例子 首先用一个容器安装好原本没有的vim包 然后将其提交到镜像中  再通过镜像打开容器来使用  

vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。Linux中的vi编辑器叫vim,它是vi的增强版(vi iMproved),与vi编辑器完全兼容,而且实现了很多增强功能。

关于镜像分层的总结:

2023.2.10学习记录Docker容器_第8张图片

本地镜像发布到阿里云:

2023.2.10学习记录Docker容器_第9张图片

只需要按照阿里云的提示一步步来即可

将镜像下载到本地也很简单 只需要一条命令:

docker pull registry.cn-hangzhou.aliyuncs.com/xyp_images/dockerrepo:[镜像版本号]

私有库(自己个人的库)下载 :docker pull registry   相当于本地有个私有的Docker Hub 具体的看操作文档 详细说了如何推送本地仓库中的内容到阿里云上

关于docker容器数据卷:启用了数据卷的容器实例他的数据会保存在宿主机的某个磁盘中

卷就是目录或文件,存在于一个或多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过Union File System提供一些用于持续存储或共享数据的特性:

卷的设计目的就是数据的持久化,完全独立于容器的生存周期,因此Docker不会在容器删除时删除其挂载的数据卷

关于挂载:容器可以将一些配置信息挂载到宿主机上 

 

 

 

 

 

 

你可能感兴趣的:(工作学习记录,docker,学习,运维)