系统环境

  • 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. Java 多线程 - 生产者消费者问题

    https://www.cnblogs.com/hckblogs/p/7858545.html

  2. Tableau 之一 连接数据源

    导入数据源 与各类数据源建立连接关系,是使用tableau探索分析数据的第一步,本节内容包括: 数据源类型 连接数据源 数据源类型 打开tableau,可以在左侧窗口看到连接选项,目前tableau可 ...

  3. AttributeError: 'module' object has no attribute 'enableTrace'

    Traceback (most recent call last): File "Long-lived-connection.py", line 29, in <module ...

  4. nginx+uwsgi+django开发环境搭建

    Nginx+uWSGI+Djangoi开发环境搭建 Django简介,环境搭建 uWSGI简介,安装与配置 Nginx安装与配置 Nginx+uWSGI+Django原理解析 1.django简介,环 ...

  5. C# emgu 多模板匹配

    public MatchInfo GetMatchPos(string Src, string Template) { MatchInfo myMatchInfo = new MatchInfo(); ...

  6. Integer.valueOf()与Integer.parseInt()区别

    Integer.parseInt()和Integer.valueOf()有本质区别,具体如下列: Integer.parseInt()把String   型转换为Int型,  Integer.valu ...

  7. Java 批量修改文件夹里面的文件的名字

    背景:公司要求使用PADS完成原理图设计.PCB Layout.而他硬件工程师要求我在将PADS的库文件发送给他们之前,必须在每一个库文件的后面追加今天的日期,再发送给他们. 问题来了,如果一次需要发 ...

  8. About Why Inline Member Function Should Defined in The Header File

    About why inline member function should defined in the header file. It is legal to specify inline on ...

  9. PHP7.* AES的加密解密

    之前写过一篇: PHP AES的加密解密-----[弃用] 使用的是php5.*之前的mcrypt_decrypt 函数,该函数已经在php7.1后弃用了,上马的是openssl的openssl_en ...

  10. python 将png图片格式转换生成gif动画

    先看知乎上面的一个连接 用Python写过哪些[脑洞大开]的小工具? https://www.zhihu.com/question/33646570/answer/157806339 这个哥们通过爬气 ...