Docker 的基本组成

镜像(image):

好比一个模板,tomcat -> run -> tomcat01 (container) 镜像可以创建多个容器

容器(container):

容器可以启动,停止,删除,基本命令

容器就是一个简易的Linux系统

仓库(repository):

存放镜像的地方

分为公有和私有

安装Docker


安装过程

  1. 卸载旧版本
  2. yum install-y yum-utils
  3. 设置镜像仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装docker

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

启动docker

systemctl start docker

运行hello-world

查看一些下载的image

docker images

卸载

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

Docker的底层原理


Docker是一个Client-Server的运行方式。每个镜像都有独立的端口。

Docker有着比虚拟机更少的抽象层

VM是分钟级别的启动速度,docker是秒级的启动速度

Docker的常用命令


帮助命令

docker version

docker info # 显示docker的系统信息

docker 命令 --help #帮助命令

镜像命令


docker images #查看所有本机上的镜像 -a -q -aq

docker search mysql

docker pull #下载 分层下载 共用的 (联合文件系统)

docker rmi -f id

容器命令


docker run [parameter] image
# 参数说明
--name="Name" 容器名字
-d      后台运行
-it     使用交互方式运行,进入容器查看内容
-p   指定端口
-P   随机指定端口-p   ip:主机端口:容器端口-p  主机端口:容器端口(常用)-p  容器端口-v 挂载目录

启动并进入容器

  • 列出所有正在运行的容器

    • docker ps
    • docker ps -a 列出正在运行+历史运行的容器
    • -n=? 显示的容器个数
    • -q 显示容器的编号

退出容器

exit # 直接退出
Ctrl + P + Q #容器不停止 退出

删除容器

docker rm 容器id   #删除指定的容器
docker rm -f $(docker ps -aq) #删除所有的容器
# 运行的不能删除 除非强制删除 rm -f

启动和停止容器

docker start 容器id   #启动
docker restart 容器id #重启
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id #强制停止当前容器

其他常用命令

docker run -d centos
# 查看日志
docker logs
# 查看进程
docker top
# 查看镜像元数据
docker inspect containerID

进入当前正在运行的容器

docker exec -it 容器ID /bin/bash (常用)
docker attach

从容器内拷贝文件到主机上

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

Docker学习记录-01相关推荐

  1. docker 学习记录1

    一. 1. Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到 ...

  2. 【ArcGIS学习记录01】--利用CRU TS数据集绘制降雨量分布图

    [ArcGIS学习记录01]–利用CRU TS数据集绘制降雨量分布图 注:仅作为本人的学习记录方便以后复习查阅. 一.介绍 CRU TS 是目前使用最广泛的气候数据集之一,由英国国家大气科学中心 (N ...

  3. Docker学习笔记01

    Docker学习笔记01 Docker学习 Docker的概述 Docker的安装 Docker的命令 镜像命令 容器命令 操作命令 ... Docker镜像 容器数据卷 DockerFile Doc ...

  4. JavaScript学习记录01快速入门、基本语法、严格检查模式

    文章目录 JavaScript学习记录01快速入门.基本语法.严格检查模式 1.1什么是JavaScript 1.2认识JavaScript框架 1.3快速入门 1.4基本语法入门 1.5数据类型简介 ...

  5. docker学习记录

    1.        docker镜像命令学习 1.1 假设想拉取一个nginx的镜像,先访问Docker Hub 网站,找到nginx镜像,然后控制台执行 docker pull nginx 拉取最新 ...

  6. jadx学习记录01

    原计划是先学习 okHttp 和拦截器,再用 Android Studio 来 demo 下,奈何 Android Studio 装完 sync 一直失败,后续换个电脑再试下.一并整理 okHttp ...

  7. echarts引入geo地图数据,前端学习记录01

    最近遇到项目需要使用使用geoJson数据在echarts上进行地图的绘制,仅使用此文记录学习的过程. 首先需要在项目中引入echart相关依赖,在package.json中添加如下依赖: " ...

  8. 学习记录01:使用pyqt5搭建yolo3目标识别界面

    使用pyqt5搭建yolo3目标识别界面 已有重制版,yolo3检测界面重制版,更简单,完善. 由于这是我第一次写这种博客,其目的也不是为了赚取积分,主要是为了记录我的学习过程中的一些方法,以便以后我 ...

  9. b站docker学习记录

    https://www.bilibili.com/video/BV1og4y1q7M4?p=22 一.部署nginx 搜索nginx的镜像 可以在docker hub中搜索,也可以直接使用命令dock ...

最新文章

  1. 抖音发布特效数据报告:每五个投稿有一个使用特效
  2. Tomcat自定义Http错误信息
  3. 深度学习将会变革NLP中的中文分词——TODO 待好好细看
  4. 【算法30】从数组中选择k组长度为m的子数组,要求其和最小
  5. 一文弄懂AOP各种概念
  6. RNN 循环神经网络系列 5: 自定义单元
  7. 获取项目中的文件流InputStream
  8. linux中$@,$*,$0,$$,$?参数的含义
  9. c# Invalidate() Update() Refresh()的区别
  10. 2021陈文灯数学复习指南百度云_【干货分享】21考研数学:高等数学常用公式、定理汇总(含打印版)...
  11. Use of @OneToMany or @ManyToMany targeting an unmapped class
  12. vtp服务器作用,vtp作用是什么?思科交换机vtp配置教程
  13. 计算机网络为何使用分组交换,而不是电路交换
  14. pytorch是什么?解释pytorch的基本概念
  15. 魔改一个自以为不太好的简历
  16. Excel图形转入CorelDRAW技巧
  17. 系统集成项目管理工程师计算题(沟通渠道)
  18. 金海佳学C++primer 练习9.15/9.16
  19. 51单片机的1T和12T的区别
  20. 阅读查询计划:楼梯SQL Server索引级别9

热门文章

  1. 小年来了,大年还会远吗
  2. gatling详细使用
  3. 功能安全——E2E应用层实现
  4. kubesphere 随笔
  5. opening tables mysql_技术分享 | 大量 Opening tables 案例分析
  6. Web服务器的配置与应用(实验)
  7. uni-app接入mPaas扫码
  8. 【励志】一个男人关心的东西 决定了他的层次
  9. Linux基础之-BTRFS文件系统
  10. 20.2.22排位赛H