Docker实用篇

1.初识docker

Docker是一个开源的容器化平台,用于构建、发布和运行应用程序。它利用了操作系统级别的虚拟化技术,可以将应用程序及其依赖项打包进一个称为"容器"的独立单元中,并在不同的环境中进行部署和运行。

应用部署的环境问题

大型项目组件较多,运行环境也较为复杂,部署时会碰到一些问题:

  • 依赖关系复杂,容易出现兼容性问题
  • 开发、测试、生产环境有差异

在这里插入图片描述
一、Docker解决依赖兼容问题

  • 将应用的Libs(函数库)、Deps(依赖)、配置与应用一起打包
  • 将每个应用放到一个隔离容器去运行,避免互相干扰

在这里插入图片描述
二、Docker解决操作系统环境差异

  • Docker将用户程序与所需要调用的系统(比如Ubuntu)函数库一起打包
  • Docker运行到不同操作系统时,直接基于打包的函数库,借助于操作系统的Linux内核来运行

在这里插入图片描述

2. Docker架构

镜像:

  • 将应用程序及其依赖、环境、配置打包在一起

容器:

  • 镜像运行起来就是容器,一个镜像可以运行多个容器

Docker结构:

  • 服务端:接收命令或远程请求,操作镜像或容器
  • 客户端:发送命令或者请求到Docker服务端

DockerHub:

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

在这里插入图片描述

3. Docker的基本操作

3.1 镜像操作

docker pull [repository]:[tag] : 拉取镜像

docker images : 查看拉取到的镜像

docker save -o [保存的目标文件名称] [repository] :导出镜像到磁盘

docker load -i [保存的目标文件名称] : 加载镜像

docker rmi [repository]:[tag] : 删除对应镜像

3.2 容器操作

docker run --name containerName -p 80:80 -d [repository]

命令解读:

  • docker run :创建并运行一个容器
  • –name : 给容器起一个名字,比如叫做mn
  • -p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
  • -d:后台运行容器
  • [repository]:镜像名称

docker pause:让一个运行的容器暂停

docker unpause:让一个容器从暂停状态恢复运行

docker stop:停止一个运行的容器

docker start:让一个停止的容器再次运行

docker rm :删除一个容器

docker ps 查看启动中的容器

docker ps -a 查看所有存在的容器

3.3 数据卷(容器数据管理)

数据卷(volume)是一个虚拟目录,指向宿主机文件系统中的某个目录。
在这里插入图片描述
一旦完成数据卷挂载,对容器的一切操作都会作用在数据卷对应的宿主机目录了。

docker volume create html:创建数据卷

docker volume ls : 查看所有数据

docker volume inspect html : 查看数据卷详细信息卷

docker volume rm:删除指定数据卷

docker volume prune:删除所有未使用的数据卷

3.3.1 挂载数据卷

我们在创建容器时,可以通过 -v 参数来挂载一个数据卷到某个容器内目录,命令格式如下

docker run --name mn -v html:/root/html -p 8080:80 nginx

这里的-v就是挂载数据卷的命令:

  • -v html:/root/htm :把html数据卷挂载到容器内的/root/html这个目录中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值