一、百度百科

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

一个完成的docker有以下几个部分组成:

  • DockerClient 客户端
  • Docker Daemon 守护进程
  • Docker Image 镜像
  • Docker Container 容器

二、Docker安装

1、卸载Docker

 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

2、需要的安装包

yum install -y yum-utils

3、设置镜像仓库

yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo

用国内的

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新软件包索引

yum mackecache fast

4、安装Docker相关

ce社区版,ee企业版,推荐安装企业版

yum install docker-ce docker-ce-cli containerd.io

5、启动Docker

systemctl start docker

6、使用docker version查看版本

7、启动hello world镜像

docker run hello-world

8、卸载

yum remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerd

三、run的流程和docker原理

1、run的流程

2、docker原理

3、docker为何比VM快?

  • Docker有着比虚拟机更少的抽象层
  • docker利用的是宿主机的内核,VM需要的是Guest OS。

四、Docker镜像常用命令

1、基本命令

docker version

docker info

docker 命令 --help #万能命令

docker images

解释:

  • REPOSITORY:镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像的ID
  • CREATE:镜像的创建时间
  • SIZE:镜像的大小

可选项

-a:列出全部的镜像

-q:只显示镜像的ID

2、搜索镜像

docker search

可选项

–filter-STATUS-3000 #搜索大于3000的

3、下载镜像

指定版本下载

docker pull 镜像名[:tag]

4、删除镜像

docker rmi -f 镜像id

五、docker容器常用命令

1、下载容器

docker pull centos

2、docker run [可选参数] image

参数说明:

  • –name 容器名称
  • -d 后台方式运行
  • -it 使用交互方式运行,进入容器查看内容(例如:docker run -it centos /bin/bash)
  • -p 指定容器的端口号 -p 8080:8080(主机端口:容器端口)

3、列出所有的运行的容器

docker ps [参数]

  • -a 列出当前正在运行的容器
  • -n 显示最近创建的容器
  • -q 只显示容器的编号

例如:docker ps -aq 显示当前正在运行的容器的编号

4、退出容器

exit

5、删除容器

  • docker rm 容器id 不能删除正在运行的容器
  • docker rm -f $(docker ps -a) 删除所有的容器
  • docker ps -a -q|xargs docker rm 删除所有的容器.

6、启动和停止容器

  • docker start 容器id
  • docker restart 容器id
  • docker stop 容器id
  • docker kill 容器id 强制停止

7、进入当前正在运行的容器

  • 方式一:docker exec -it 容器id /bin/bash 进入容器后开启一个新的终端(常用)
  • 方式二:docker attach 容器id 进入容器当前正在执行的终端

8、从容器内拷贝文件到主机

docker cp 容器id:容器内路径 主机路径

例如:docker cp 容器id:/home/test.java /home

9、其它常用命令

(1)后台启动容器 -d

(2)查看日志命令

docker logs --help

显示指定行数的日志:

docker logs -tf --tail 10 容器id

-f:内容,,,-t:时间

例如:循环执行

docker run -d centos /bin/sh -c “while;do echo hello world;sleep 1;done”

(3)显示容器中的进行信息

查看docker内部的进程信息:docker top 容器id

(4)查看容器的元数据

docker inspect --help

显示容器的所有信息:

docker inspect 容器id

作者:萌褚

docker是干什么的,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. java 设置光标_java光标位置怎么设置 java设置光标位置方法
  2. 提示用户输入一个正整数n,如果n=5,就输出下列图形,其他n值以此类推
  3. 教你29招,让你在社交,职场上人人对你刮目相看
  4. java va start_va_start和va_end使用详解
  5. Linux 进程间通信(IPC)---大总结
  6. ansible笔记(8):常用模块之系统类模块(二)
  7. Ubuntu已经很好用了
  8. 强大的 function adapters
  9. windows 7 help 帮助文件无法打开的解决
  10. 公司企业邮箱IP被列入国际黑名单组织怎么解决
  11. 服务器pe安装win7系统安装教程,win7pe装系统步骤详解
  12. knife4j文档-个人笔记
  13. 前端开发--箭头函数
  14. 基于JAVA中小型饭馆餐饮管理系统计算机毕业设计源码+系统+数据库+lw文档+部署
  15. STM32 CAN 库函数
  16. 如何解决直播中黑屏、花屏、闪屏问题?10 分钟搞明白
  17. h5互动小游戏定制开发流程
  18. 比MySQL快801倍,字节阿里争相 部署,真香!
  19. mysql 主库innodb从库myisam_MySQL的两种常用数据库存储引擎:MyISAM与InnoDB
  20. Nodejs:ESModule和commonjs,傻傻分不清

热门文章

  1. 初学者之《复刻英雄联盟官网之人脸识别登录》②
  2. 学术会议 | 欢迎注册参加第11届国际知识图谱联合会议
  3. 云彩直淘系统开发——PHP源码搭建
  4. CCHI 2019 | 旷视研究院携手学界探索认知+人工智能交叉研究新可能
  5. 为什么房价只涨不跌惊人内幕! [转]
  6. 关于OpenGL 3.0/4.0
  7. 信息增益matlab实现,python中如何实现信息增益和信息增益率
  8. 每日一句英语(日更新)
  9. 英语 | Day 35、36 x 句句真研每日一句(从句)
  10. 电路原理 | 绪论基本电阻电路