Docker容器及常用命令

Docker是一种容器技术,它能解决软件跨环境迁移的问题
https://www.bilibili.com/video/BV1CJ411T7BK

在这里插入图片描述

Docker命令

Docker服务相关命令
# 启动docker服务
systemctl start docker
# 停止docker服务
systemctl stop docker
# 重启docker服务
systemctl restart docker
# 查看docker服务状态
systemctl status docker
Docker镜像相关命令
# 查看镜像
docker images
docker images -q   # 查看所有镜像
# 搜索镜像
docker search [image]
# 拉取镜像
docker pull [image]:[版本号]
# 删除镜像
docker rmi [image ID]
docker rmi [image]:[版本号]
docker rmi `docker images -q`   # 删除所有镜像
Docker容器相关命令
# 容器运行
docker run -it --name=[容器命名] [image]:[版本] /bin/bash
> -i:表示保持容器一直运行
> -t:给容器分配一个终端
> -d:后台运行创建容器,通过exit命令退出容器之后容器不会自动关闭
> -it创建的容器一般称为交互式容器,-id创建的容器一般称为守护式容器
> --name:给容器命名
> /bin/bash:进入容器的初始化指令,相当于打开一个shell脚本

# 进入后台运行的容器并分配一个终端
docker exec -it [容器名] /bin/bash

# 退出容器
exit

# 查看正在运行的容器
docker ps
docker ps -a  # 查看历史容器

# 停止容器
docker stop [容器]

# 删除容器
docker rm [容器ID/名称]

# 查看容器信息
docker inspect [容器名称]

docker容器的数据卷

数据卷的概念及作用

数据卷是宿主机中的一个目录或文件,当容器目录和数据卷目录绑定之后,对方的修改会立即同步。将宿主机的数据卷加载到容器目录后,当容器销毁后,容器中产生和修改的数据会存储在数据卷目录中。一个数据卷可以被多个容器同时挂载。一个容器也可以挂载多个数据卷。
在这里插入图片描述

配置数据卷

创建启动容器时,使用-V参数设置数据卷

docker run (...) -V [宿主机目录(文件)]:[容器内目录(文件)] (...)
# 目录必须是绝对路径
# 如果目录不存在,则会自动创建
# 可以挂载多个数据卷
配置数据卷容器

多容器进行数据交换:

  1. 多个容器挂载同一个数据卷
  2. 数据卷容器
    在这里插入图片描述
    C3挂载了宿主机数据卷,再把C1和C2挂载到C3上,这样就相当于C1,C2和C3都挂载了同一个宿主机数据卷。
    在这里插入图片描述
    配置数据卷容器步骤:
  3. 创建启动数据卷容器,使用-V参数设置数据卷
docker run -it --name=c3 -V [容器内目录] [image] /bin/bash
# 会自动分配宿主机数据卷目录
  1. 创建启动C1,C2容器,使用–volumes-from参数设置数据卷
docker run -it --name=c1 --volumes-from c3 [image] /bin/bash
docker run -it --name=c2 --volumes-from c3 [image] /bin/bash

就算将C3删掉,C1和C2的挂载的数据卷目录也还在。

Dockerfile

Docker镜像原理

Docker镜像是由特殊的文件系统叠加而成,最底端是bootfs,并使用宿主机的bootfs,所以不同系统不能安装不同系统环境的Docker版本,比如window系统下不能安装启动Centos镜像的Docker。
在这里插入图片描述
在这里插入图片描述
镜像制作

  1. 容器转为镜像
# 容器转为镜像
docker commit [容器ID] [镜像名称]:[版本号]
# 镜像转为压缩文件
docker save -o [压缩文件名称] [镜像名称]:[版本号]
# 压缩文件还原成镜像
docker load -i [压缩文件名称]

在这里插入图片描述

Dockerfile概念及作用

Dockerfile是一个文本文件,包含了若干条指令,每一条指令构建一层镜像,基于基础镜像,最终构建出一个新的镜像。Dockerfile可以为开发团队提供一个完全一致的开发环境。

Dockerfile关键字

https://www.runoob.com/docker/docker-dockerfile.html

Docker服务编排

服务编排概念

按照一定的业务规则批量管理容器

Docker Compose概述

Docker Compose是一个编排多容器分布式部署的工具,提供命令集管理容器化应用的完整开发周期,包括服务构建,启动和停止。
使用步骤:

  1. 使用Dockerfile定义运行环境镜像
  2. 使用Docker-compose.yml定义组成应用的各服务
  3. 运行docker-compose up启动应用

容器和虚拟机的区别

容器虚拟化的是操作系统,虚拟机虚拟化的是硬件
传统虚拟机可以运行不同的操作系统,容器只能运行同一类型操作系统

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值