文章目录

  • 1. docker基本组成
    • 1.1 镜像(image)
    • 1.2 容器(container)
    • 1.3 仓库(repository)
  • 2. docker常用命令
    • 2.1 启动类命令
    • 2.2 镜像命令
    • 2.3 容器命令

1. docker基本组成

1.1 镜像(image)

docker镜像(image)就是一个只读的模板。镜像可以用来创建docker容器,一个镜像可以创建很多容器。

是一种轻量级、可执行的独立软件包,它包含运行某个软件所需的所有内容,我们把应用程序和配置依赖打包好形成一个可交付的运行环境(包括代码、运行时需要的库、环境变量和配置文件等),这个打包好的运行环境就是image镜像文件。

1.2 容器(container)

(1)从面向对象角度

Docker利用容器(Container)独立运行的一个或一组应用,应用程序或服务运行在容器里面,容器就类似于一个虚拟化的运行环境,容器是用镜像创建的运行实例。就像是Java中的类和实例对象一样,镜像是静态的定义,容器是镜像运行时的实体。容器为镜像提供了一个标准的和隔离的运行环境,它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台

(2)从镜像容器角度

可以把容器看做是一个简易版的 Linux 环境

1.3 仓库(repository)

仓库(Repository)是集中存放镜像文件的场所。类似于: Maven仓库、github仓库

仓库分为公开仓库和私有仓库两种形式。最大的公开仓库是docker hub

2. docker常用命令

2.1 启动类命令

(1)启动docker: systemctl start docker
(2)停止docker: systemctl stop docker
(3)重启docker: systemctl restart docker
(4)查看docker状态: systemctl status docker
(5)开机启动: systemctl enable docker
(6)查看docker概要信息: docker info
(7)查看docker总体帮助文档: docker --help
(8)查看docker命令帮助文档: docker 具体命令 --help

2.2 镜像命令

(1)查看所有镜像

docker images

(2)从 Docker Hub 查找镜像

docker search [OPTIONS] 镜像名字
OPTIONS说明:
--limit : 只列出N个镜像,默认25个

(3)下载镜像

docker pull 镜像名字[:TAG]

(4)删除镜像(会提示先停止使用中的容器)

docker rmi  镜像name/镜像id

(5)虚悬镜像
仓库名、标签都是<none>的镜像,俗称虚悬镜像dangling image

2.3 容器命令

有镜像才能创建容器, 这是根本前提

(1)查看所有容器(可以查到容器id/容器name)

docker ps [OPTIONS]
[OPTIONS]说明:
-a: 列出当前所有正在运行的容器+历史上运行过的
-l: 显示最近创建的容器。
-n:显示最近n个创建的容器。
-q: 静默模式,只显示容器编号。

(2)新建+启动容器

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
[OPTIONS]说明:
有些是一个-,有些是两个--
--name="容器新名字":为容器指定一个名称;
-d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行);
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用。也即启动交互式容器(前台有伪终端,等待交互);
-P: 随机端口映射(大写P)
-p: 指定端口映射,小写p(-p hostPort:containerPort)

(3)启动已经停止运行的容器

docker start 容器ID或者容器名

(4)重启容器

docker restart 容器ID或者容器名

(5)停止容器

docker stop 容器ID或者容器名

(6)强制停止容器

docker kill 容器ID或容器名

(7)删除已停止的容器

docker rm 容器name/容器id

(8)查看容器运行日志

docker logs 容器名称/容器id

(9)动态查看容器运行日志

docker logs -f -t  -n=5 docker容器编码
(1)-f 就是跟踪实时日志
(2)-t 用来显示docker日志的时间戳
(3)-n就是显示docker容器的最后n行日志
(4)-n=5就是显示docker容器最后5行的日志

(10)查看容器内运行的进程

docker top 容器ID

(11)查看容器内部细节

docker inspect 容器ID

(12)进入正在运行的容器并以命令行交互

docker exec -it 容器name/容器id /bin/bash

(13) 复制本机的一个文件到docker容器中

 docker cp <本机文件path> <容器name或id>:<复制到的容器中的path>

(14)从docker容器中下载文件到本机

docker cp <容器name或id>:<在容器中的文件path> <本机path>

(15)容器的导入与导出

docker export 容器ID > 文件名.tar
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号

备注:以上内容来自尚硅谷资料

docker(一):基本组成与常用命令相关推荐

  1. docker 一起性重启所有镜像_docker系列四之docker镜像与容器的常用命令

    docker镜像与容器的常用命令 一.概述 docker的镜像于容器是docker中两个至关重要的概念,首先给各位读者解释一下笔者对于这两个概念的理解.镜像,我们从字面意思上看,镜子里成像,我们人站在 ...

  2. docker笔记1_安装及常用命令

    文章目录 虚拟机与 docker的区别 docker 的基本组成 docker 安装 docker 的运行原理 Docker 的常用命令 1. 帮助命令 1. 镜像命令 1. 容器命令 下一页 虚拟机 ...

  3. Docker小白到实战之常用命令演示,通俗易懂

    前言 上一篇大概认识了Docker,主要是从概念.架构.优点及流程方面进行阐述,并进行安装和体验:接下来就开始进行实操学习,在演示过程中会针对关键的知识点进行归纳和总结,这里先从常用命令说起,来吧,小 ...

  4. docker 删除所有镜像_Docker常用命令

    docker 常用命令 #查看 Docker 版本 docker version #从 Docker 文件构建 Docker 镜像 docker build -t image-name docker ...

  5. Docker学习篇(一)Docker概述、安装和常用命令

    Docker概述 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化.容器是完 ...

  6. Docker 入门(二)常用命令纯手敲带测试结果

    Docker常用命令 帮助命令 docker version # 显示docker版本信息 docker info # 显示docker系统信息,包括镜像和容器的数量 docker --help # ...

  7. docker介绍和安装以及常用命令

    介绍 Docker是基于Go语言实现的云开源项目. 一次镜像,处处运行 传统的部署项目环境配置相当麻烦,换一台机器,就要重来一次,费力费时. Docker的主要目标是"一次镜像,随处运行&q ...

  8. ajax nginx 转发 sessionid_Nginx:初识Nginx(概念、在Docker中安装Nginx、常用命令、配置文件) - 怀梦想,致远方...

    1.Nginx初识 (1)概念 Nginx是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好 Nginx可以作为静态页面 ...

  9. Linux下搭建rabbitMQ、安装jdk、安装redis、安装zookeeper、docker安装MySQL、防火墙常用命令、docker安装、Windows下嘛呢私服搭建、Nginx安装

    rabbitMQ 1. 搭建Elang环境 1)安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了 yum -y install make gcc gcc-c++ kernel-d ...

  10. Docker系列(二)-Dcoker的常用命令

    文章目录 帮助命令 镜像命令 查看本机镜像 搜索镜像 下载镜像 删除镜像 查看镜像的历史 容器命令 启动容器 查看运行容器 退出容器 删除容器 启动和停止容器 常用的其他命令 后台启动容器 查看日志 ...

最新文章

  1. c# image转换为bitmap_C# 人脸识别库
  2. iphone相册储存空间已满_无需第三方APP,加密 iPhone 中的照片
  3. 基于Boost::beast模块的协程WebSocket客户端
  4. python 手机测试_python脚本如何测试手机
  5. dubbo中的Filter顺序是如何确定的
  6. 通知中心 NSNotificationCenter 的简单使用方法
  7. [跟我学中小企业架构部署]之一:整体架构设计
  8. 主流框架的搭建(VUE,React)
  9. c++ maps使用
  10. paip.提升安全性----.net C#源码防止反编译以及源码加密
  11. 华为云devops认证考试课堂笔记2
  12. 领域驱动架构(DDD)建模中的模型到底是什么?
  13. NVIDIA Riva中文手册 (五) —— Riva TTS语音合成API的使用
  14. 明珠三国java最新_新明珠三国下载-新明珠三国最新版下载v5.0-三国在线
  15. 2015腾讯校园招聘软件测试部分笔试题
  16. java fadein_jQuery fadeIn()和fadeOut()方法
  17. 山东省2013高职分数线
  18. 万众瞩目--腾讯云数据库TDSQL第一届征文正式大赛开启
  19. Spring Boot 中yml文件小图标不正确解决方案
  20. jdk安装,提示错误1335

热门文章

  1. Linux菜鸟到老鸟的那些建议
  2. linux 运行菜刀,linux 菜刀
  3. 在博客里胡搞markdown排版是否搞错了什么
  4. 我的世界java泰坦生物版_我的世界泰坦生物MOD
  5. 苹果手机 jquery点击无效
  6. 工作学会9句话,升职加薪变股东
  7. 面试经历-201106
  8. [日常] go语言圣经-声明,变量,赋值,类型,包和文件习题
  9. U盘无法格式化的几个解决方法
  10. Coremail论客全球安全生态合作伙伴召集令正式启动