Docker基本管理(Docker镜像操作和容器操作)

本文详细介绍了Docker的基本概念,包括Docker与虚拟机的区别,如资源消耗、启动速度、安全性和服务模式。接着,阐述了Docker的安装方法和核心概念,如镜像和容器。在Docker镜像的操作部分,涵盖了查看、搜索、下载、删除、命名及保存与加载镜像的步骤。在容器操作中,讲解了如何创建、启动、检查、进入、导出和删除容器。这些内容旨在帮助读者掌握Docker的日常使用。
摘要由CSDN通过智能技术生成

一、Docker概述

Docker是什么

  • 是一种轻量级的“虚拟机”
  • 在Linux容器里运行应用的开源工具

Docker与虚拟机的区别

docker虚拟机
资源
启动时间短,十几毫秒长,几分钟
安全共享内核,不安全系统逻辑隔离,安全
服务一个容器只跑一个服务可以运行多个服务

Docker的使用场景

  • 打包应用程序简化部署
  • 可脱离底层硬件任意迁移
  • 例:服务器从腾讯云迁移到阿里云

二、安装Docker

Docker的核心概念

  • 镜像
    • 一个面向Docker容器引擎的只读模板
  • 容器
    • 从镜像创建的运行实例
  • 仓库 (分:公、私–harbor)
    • 集中保存镜像的地方

安装方式

  • CentOS安装Docker的两种方式
    • 使用CURL获得Docker的安装脚本进行安装
    • 使用YUM 仓库来安装Docker

==具体操作请看我的另一个博客==https://blog.csdn.net/ycycyyc_/article/details/108695756

三、Docker镜像创建与操作

3.1 Docker镜像操作

查看docker版本

docker version
或
docker -v

搜索nginx镜像(公有仓库)

docker search 关键字

下载nginx镜像

  • AUFS(联合文件系统)若干层下载,存储在多个节点

  • 下载后存放在 /var/lib/docker

  • /var/lib/docker/image/overlay/repositories.json //下载文件信息

docker pull 仓库名称[:标签]

查看镜像列表

docker images 仓库名称[:标签]

获取镜像信息

docker inspect 镜像ID号
或者
docker inspect 仓库名称[:标签]

添加新标签

  • 并不是修改,而是增加了一个新标签,ID是一样的,删除其中一个,不会影响另一个
docker tag 名称[:标签] 新名称[:新标签]

例:
docker tag nginx:latest nginx:web

删除镜像

  • i:image镜像、如果有别名镜像存在(不同标签),只留下一个,不然无法删除
docker rmi 仓库名称[:标签]
或
docker rmi 镜像ID号

存出镜像命名

docker save -o 存出文件名 存出的镜像

例:
docker save -o /opt/nginx nginx:latest   ##存出镜像命名为nginx存在/opt目录下

载入镜像

docker load < 存出文件名
或
docker load --input 存出文件名

例:
docker load < /opt/nginx   ##导回来

上传镜像

docker push 仓库名称[:标签]

例:
docker push abner/nginx:web

3.2 Docker容器操作

容器创建

  • -i: 让容器的标准输入保持打开
  • -t: 让Docker分配一个伪终端
docker create [选项]镜像运行的程序

例:
docker create -it nginx:latest /bin/bash

查看容器运行状态

  • -a:列出所有的容器,包括未运行的容器
docker ps -a

启动容器

docker start 容器的ID/名称

创建容器并启动执行shell命令

  • 执行完成后直接关闭,状态是Exited
docker run [选项]镜像运行的程序 执行的命令

例:
docker run paigeeworld/centos:7 /usr/bin/bash -c ls /    ##查看容器里有没有centos7,没有就下载,查看里面有什么(一次性任务)
  • -d:持续在后台执行
docker run -d paigeewold/centos:7 /bin/bash -c "while true;do echo hello;done"

进入容器

docker exec [选项]容器的ID/名称 /bin/bash

例:
docker exec -it 5d85d07f322e /bin/bash

导出容器

docker export 容器的ID/名称 > 文件名

例:
docker export bf4eff9c5a06 > /opt/nginx_c

导入容器

  • 导入文件一定要是模板文件
cat 文件名| docker import -生成的镜像名称:标签

例:
cat nginx_c | docker import - nginx:web

删除容器

  • 运行中的容器不能删除,先关闭,再删
docker rm [选项]容器的ID/名称

批量删除容器

docker ps -a | awk '{print "docker rm "$1}' | bash
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值