系统环境

  • CentOS Linux release 7.5.1804 (Core)
安装依赖包
  • 更新系统软件
yum update
  • 安装docker
yum install docker
  • 启动docker并设置开机启动,查看启动状态
systemctl enable docker.service
systemctl start docker.service
systemctl status docker.service
  • 查看安装位置
rpm -ql docker
  • 安装docker仓库
yum install docker-distribution
  • 查看安装位置
rpm -ql docker-distribution
  • 启动服务,并设置开机启动
systemctl enable docker-distribution
systemctl start docker-distribution
systemctl status docker-distribution
  • 查看docker版本
docker version

docker基本操作

  • 搜索镜像
docker search centos:latest
  • 将镜像拉到本地,然后就能通过docker images查看到
# 以下两种方式,一种指定镜像来源,一种默认官方源
docker pull docker.io/centos
docker pull centos

由于docker是国外的,中国区访问质量不是很好,可以配置一些国内的镜像源

vim /etc/docker/daemon.json

修改为下面的内容

{"registry-mirrors":["https://registry.docker-cn.com"]}
  • 查看本地镜像
docker images
  • 查看本地容器
docker ps

不带选项只显示当前运行带容器

加上-a选项,可以看到历史运行容器

  • 运行镜像
# 以交互式进入容器操作
docker run -it 镜像ID /bin/bash
# 下面这种方式,带上--rm参数,表示容器运行完退出时一起删除,节省系统资源, --name则是给容器起个名字,这个名字和容器ID的效果一样使用
docker run -it --rm --name cmdb centos:latest
  • 进入一个已经运行的容器
docker exec -it cmdb bash
  • 查看容器与原始镜像内容变化
# 会列出容器修改后的路径及文件位置
docker diff cmdb
  • 保存容器
docker commit -m "注释信息" 容器ID tag标记
# 如对cmdb服务器内容修改,然后创建一个新版本,类似git版本控制,这样下次启动基于这个新版本,就不在需要做上一个版本与这个版本之间diff差异的操作
docker commit --author "zengchunyun" --message "update index.html" cmdb centos:v2 # 通过查看docker images就会出现新的镜像版本
docker images # 以新版本镜像运行cmdb
# 注意,运行新版本时,要确保上一个版本的容器分配的端口不能和当前映射的端口一致,否则无法启动
docker run -p 80:80 --name new_cmdb centos:v2
  • 删除容器

    删除容器前,如果容器在运行状态,需要停止容器

  • 停止容器

# 以下两种方式都可以停止容器运行
docker stop [CONTAINER ID]
docker stop [NAMES]
  • 删除容器
# 以下两种方式都可以删除容器
docker rm [CONTAINER ID]
docker rm [NAMES]
  • 删除镜像

    默认删除镜像得保证该镜像不被其它进程使用,也就说没有运行在容器里,可以使用-f参数强制删除镜像
docker rmi 镜像ID

Docker安装及基本操作的更多相关文章

  1. Docker安装和基本操作

    一.Docker安装 CentOS7安装Docker CE $sudo yum install -y yum-utils device-mapper-persistent-data lvm2 $sud ...

  2. Docker 安装&基本操作

    Docker 安装 Docker 中的三个概念:镜像,容器,仓库 镜像(image):Docker 镜像就是一个只读的模板,镜像可以用来创建 Docker 容器.Docker 提供了一个很简单的机制来 ...

  3. CentOS安装docker,及其基本操作

    CentOS安装docker,及其基本操作 一.安装docker Docker要求运行在Centos 7上,要求系统为64位,系统内核版本3.10以上 1.uname -an 查看当前系统版本 2.y ...

  4. docker安装、下载镜像、容器的基本操作

    文章目录 一.docker安装与基本使用 1.docker的安装.从远程仓库下载镜像 2.配置docker国内源 二.创建容器 1.create i.创建容器 ii.进入容器 iii.启动容器 2.r ...

  5. 理解Docker(1):Docker 安装和基础用法

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  6. Docker(一):Docker安装

    简介:Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare met ...

  7. Docker 安装和基础用法

    理解Docker(1):Docker 安装和基础用法 本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 ...

  8. docker安装及基本使用

    docker分为docker CE 和docker EE,CE即免费社区版,EE即企业付费版.下面基于centos7安装docker CE,其它linux版本可以参考官方文档https://docs. ...

  9. docker(一) -- docker安装、容器加速、下载、备份

    一.docker的 容器是从镜像中创建出来的虚拟实例 容器用来运行实例,是读写层 镜像用来安装程序,是只读层 1. docker的安装和基本操作 安装命令 yum -y update yum inst ...

随机推荐

  1. Corn Fields POJ - 3254 (状压dp)

    题目链接: Corn Fields  POJ - 3254 题目大意:给你一个n*m的矩阵,矩阵的元素只包括0和1,0代表当前的位置不能放置人,1代表当前的位置可以放人,当你决定放人的时候,这个人的四 ...

  2. vue.js学习系列-第一篇

    VUE系列一 简介    vue是一个兴起的前端js库,是一个精简的MVVM.从技术角度讲,Vue.js专注于 MVVM 模型的 ViewModel 层.它通过双向数据绑定把 View 层和 Mode ...

  3. ruban后台项目启动。进入断点

    eclipse debug启动 进入断点显示-------------HikariPool-1 - Starting... 原因是 eclipse和tomcat的交互而产生的,在以debug模式启动t ...

  4. 安装版本( 相关关系 Vue SSR 指定版本)

    1. 关于 brew mac包管理器 终端安装 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebr ...

  5. Vagrant上运行SITL

    打算给Tower加个手机遥控的功能,用运行于vagrant sitl来联合调试,在公司的网络条件很好的情况下没出任何错,都是根据http://ardupilot.org/dev/docs/settin ...

  6. pythonのdjango 缓存

    由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5 ...

  7. 微软将把Windows Defender防火墙传递给 Linux 子系统

    前不久,微软以 Azure Sphere OS 的形式发布了自己的 Linux 版本.而在最新的开发中,该公司又决定将其 Windows Defender 防火墙的传递给 Linux 子系统(WSL) ...

  8. The walking dead

    邪恶令好人团结 Facing evil brings good people together 只是没有人觉得自己是邪恶的一边 No one ever thinks that they’re the ...

  9. vuex 收藏一个循序渐进,易懂易行的博客。

    https://www.jianshu.com/p/133d329c3702  记录--

  10. 手把手设计MyBatis

    最近趁热打铁,研究了一下Mybatis.MyBatis框架的核心功能其实不难,无非就是动态代理和jdbc的操作,难的是写出来可扩展,高内聚,低耦合的规范的代码. 本文完成的Mybatis功能比较简单, ...