Docker入门

Docker

是一个快速交付应用,运行应用的技术

一.作用

  1. 解决大型项目依赖关系复杂,不同组件依赖的兼容性问题

    • Docker允许开发中将应用、依赖、函数库、配置一起打包,形成可移植镜像

    • Docker应用运行在容器中,使用沙箱机制,相互隔离

      )

  2. 解决开发、测试、生产环境有差异的问题

    • Docker将用户程序与所需要调用的系统函数库一起打包

      • Docker运行到不同操作系统时,直接基于打包的库函数,借助于操作系统的Linux内核来运行

二.Docker与虚拟机

三.镜像和容器

  • 镜像(lmage):Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。
  • 容器(Container):镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。

DockerHub是一个镜像托管的服务器,类似的还有阿里云镜像服务,统称为
DockerRegistry

四.Docker架构

Docker是一个CS架构的程序,由两部分组成:

  • 服务端(server):Docker守护进程,负责处理Docker指令,管理镜像、容器等
  • 客户端(client):通过命令或RestAPIDocker服务端发送指令。可以在本地或远程向服务端发送指令。

五.Docker 基本操作

注意:

shell 复制代码
#查看帮助命令
docker -help
#查看具体命令的帮助
docker images --help

1.具体的镜像拉取操作

1.1DockerHub(需要魔法):https://hub.docker.com/
1.2搜索自己需要的镜像
1.3在XSherll上通过命令拉取镜像
1.4查看拉起到的镜像

2.利用docker savenginx镜像导出磁盘,然后再通过load加载回来

2.1

shell 复制代码
sudo docker save -o nginx.tar nginx:latest
#查看文件
ll

2.2

shell 复制代码
#删除镜像nginx
sudo docker rmi nginx:latest
#通过load加载回来nginx
sudo docker load -i nginx.tar

六.容器相关命令

shell 复制代码
docker logs #查看容器运行日志

docker ps #查看所有运行的容器及状态

docker exec #进入容器执行命令

docker rm #删除指定容器

案例1:

案例2:

七.数据卷

数据卷的作用:

【将容器与数据分离,解耦合,方便操作容器内数据,保证数据安全】

shell 复制代码
sudo docker volume create 卷名  #创建数据卷
sudo docker volume ls    #查看存在的数据卷
sudo docker volume inspect 卷名 #查看指定数据卷的详细信息
sudo docker volume rm  卷名  #删除指定数据卷
sudo docker volume prune  #删除未使用的数据卷
相关推荐
Andy杨38 分钟前
20250718-5-Kubernetes 调度-Pod对象:重启策略+健康检查_笔记
笔记·容器·kubernetes
Andy杨2 小时前
20250718-1-Kubernetes 应用程序生命周期管理-应用部署、升级、弹性_笔记
linux·docker·容器
别致的影分身8 小时前
Docker 镜像原理
运维·docker·容器
阿葱(聪)8 小时前
java 在k8s中的部署流程
java·开发语言·docker·kubernetes
指月小筑8 小时前
K8s 自定义调度器 Part1:通过 Scheduler Extender 实现自定义调度逻辑
云原生·容器·kubernetes·go
?ccc?9 小时前
Kubernetes 架构原理与集群环境部署
容器·架构·kubernetes
Elastic 中国社区官方博客10 小时前
在 Windows 上使用 Docker 运行 Elastic Open Crawler
大数据·windows·爬虫·elasticsearch·搜索引擎·docker·容器
玄辰星君10 小时前
【MAC】nacos 2.5.1容器docker安装
macos·docker·nacos
土小帽软件测试10 小时前
docker安装、启动jenkins服务,创建接口自动化定时任务(mac系统)
docker·容器·jenkins
世纪摆渡人10 小时前
部署-k8s和docker、jenkins的区别和联系
docker·kubernetes·jenkins