安装Docker虚拟机
  ◆ 先更新yum软件管理器,然后再安装Docker
     #更新yum软件管理器
     yum -y update
     #安装Docker
     yum install -y docker #-y 代表选择程序安装中的yes选项

管理Docker虚拟机
  ◆ 启动、关闭与重启
   #启动Docker
     service docker start
      #关闭Docker
      service docker stop
      #重启Docker
      service docker restart

在线安装镜像
  ◆ 配置加速器
     Step1:
     先进入DaoCloud的官网https://www.daocloud.io/ 需要先注册才能使用它的加速器

       curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://1d6584c4.m.daocloud.io
       将上述命令在CentsOS中执行 
       
       Step2:
       编辑Docker配置文件 去掉中的',',否则加速器使用不了

       vi /etc/docker/daemon.json
       将{"registry-mirrors": ["http://1d6584c4.m.daocloud.io"],} 改为 {"registry-mirrors": ["http://1d6584c4.m.daocloud.io"]}
       然后保存daemon.json文件
 
    ◆ 在线安装Java镜像
       #在仓库中查找Java镜像

docker search java

       
       #将仓库中镜像中找到自己需要的的Java镜像下载到本机 
       docker pull 镜像名称
       eg:我需要一个镜像名称为docker.io/java的镜像
       docker pull docker.io/java
       注:国外镜像仓库下载速度较慢,建议使用国内镜像仓库,如DaoCloud(加速器)
       #显示Docker里面的所有镜像
       docker images
 
导出导入镜像
    ◆ 导入导出镜像
       #导出镜像名称为docker.io/java的镜像
       docker save docker.io/java > /home/java.tar.gz
       #导入镜像
       docker load < /home/java.tar.gz
       #显示Docker里面的所有镜像
       docker images
       #删除镜像名称为docker.io/java的镜像
       docker rmi docker.io/java
 
启动容器
    ◆ 启动名称为docker.io/java的镜像会创建出一个运行状态的容器
       dockerrun -it --name myjava docker.io/java bash
       -it:表示启动容器后开启一个交互的界面
       --name:表示为这个启动的容器命个名字,上面的”myjava“就是容器的名字。(注:该选项为可选项,也可以不给容器取名字)
       docker.io/java:镜像的名称
       bash:启动这个容器bash命令行
       docker run -it --name myjava -p 9000:8080 -p 9001:8085 docker.io/java bash
       -p:宿主机端口:docker虚拟机端口
       注:一个-p命令映射一个端口,多个端口的映射就在后面写多个-p参数即可
       docker run -it --name myjava -v /home/project:/soft --privileged docker.io/java bash       -v:宿主机目录:docker虚拟机的目录
       --privileged:表示docker虚拟机在操作宿主机目录里面拥有最高权限
       注:一个-v命令映射一个文件夹,多个文件夹的映射就在后面写多个-v参数即可
           另外像数据库文件、软件配置文件建议都放在宿主机上通过映射的方式给到Docker虚拟机,这个将来在备份和恢复时就很方便
 
        #先在宿主机上创建一个目录
        mkdir /home/project
        #将上面的命令组合下启动一个容器
        docker run -it -p 9000:8080 -p 9001:8085 -v /home/project:/soft --privileged --name myjava docker.io/java bash

这就表示已经进入了Docker虚拟机里面的环境了

        #在容器里面测试一些 soft文件夹下的文件写入
        cd /soft
        touch hello.txt
        echo Thanks > hello.txt
        #退出当前容器
        exit
        #去当前宿主机的目录下去查看一下文件是否写入
        cat /home/project/hello.txt
 
暂停和停止容器
    ◆ 暂停和停止容器的命令
        #暂停容器名为myjava的容器 命令格式:docker pause 容器名称|容器编号
        docker pause myjava
        #启动(用于被pause暂停了的容器)容器名为myjava的容器 命令格式:docker unpause容器名称|容器编号
        docker unpause myjava
        #停止容器名为myjava的容器 命令格式:docker stop 容器名称|容器编号
        docker stop myjava
        #启动(用于被stop停止了的容器)容器名为myjava的容器 命令格式:docker start -i 容器名称|容器编号
        docker start -i myjava
 
删除容器
    ◆ 删除容器命令
       #删除容器名为myjava的容器,前提是该容器必须是通过stop完全停止了的容器
        docker rm myjava

#查看所有的容器

        docker ps -a

Docker虚拟机实战的更多相关文章

  1. Docker 监控实战

    如今,越来越多的公司开始使用 Docker 了,现在来给大家看几组数据: 2 / 3 的公司在尝试了 Docker 后最终使用了它 也就是说 Docker 的转化率达到了 67%,而转化市场也控制在 ...

  2. Docker虚拟化实战学习——基础篇(转)

    Docker虚拟化实战学习——基础篇 2018年05月26日 02:17:24 北纬34度停留 阅读数:773更多 个人分类: Docker   Docker虚拟化实战和企业案例演练 深入剖析虚拟化技 ...

  3. Docker入门实战_正版电子书在线阅读_百度阅读

    Docker入门实战_正版电子书在线阅读_百度阅读 Docker入门实战

  4. Docker虚拟机理论

    Docker虚拟机架构     ◆ Docker架构                 Docker创建的所有虚拟实例共用同一个Linux内核,对硬件占用较小,属于轻量级虚拟机   Docker镜像与容 ...

  5. Docker swarm 实战-部署wordpress

    Docker swarm 实战-部署wordpress 创建一个overlay的网络 docker network create -d overlay demo 6imq8da3vcwvj2n499k ...

  6. docker虚拟机动态扩展内存

    需求:将一台docker虚拟机的内存从6G扩展到8G. 关于资源限制,docker使用的是cgroup,这里就不细说原理了,只记录一下操作方法. 1.先找到容器ID # docker ps 2.进入对 ...

  7. 基于docker/虚拟机的esp32远程工作流

    原文:基于docker/虚拟机的esp32远程工作流 工作流框图 背景说明 为什么需要这套工作流--为了满足高效和灵活的开发方式 因为我经常需要在公司和家里切换不同的电脑工作,所以编译环境需要在远程主 ...

  8. Docker下实战zabbix三部曲之一:极速体验

    对于想学习和实践zabbix的读者来说,在真实环境搭建一套zabbix系统是件费时费力的事情,本文内容就是用docker来缩减搭建时间,目标是让读者们尽快投入zabbix系统的体验和实践: 环境信息 ...

  9. Docker下实战zabbix三部曲之二:监控其他机器

    在上一章<Docker下实战zabbix三部曲之一:极速体验>中,我们快速安装了zabbix server,并登录管理页面查看了zabbix server所在机器的监控信息,但是在实际场景 ...

随机推荐

  1. Spark Programming--- Shuffle operations

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  2. 背水一战 Windows 10 (112) - 通知(Badge): application 的 badge 通知, secondary 的 badge 通知, 轮询服务端以更新 badge 通知

    [源码下载] 背水一战 Windows 10 (112) - 通知(Badge): application 的 badge 通知, secondary 的 badge 通知, 轮询服务端以更新 bad ...

  3. Android JNI 学习(十):String Operations Api & Other Apis

    一.String Operations(字符串操作) 1. NewString jstring NewString(JNIEnv *env, const jchar *unicodeChars, js ...

  4. Android 监听屏幕锁屏&用户解锁

    在做视频播放器的时候,遇到一个问题,在用户播放视频然后锁屏之后,视频播放器仍然在继续播放,遇到类似手机系统状态改变的问题的时候,首先想到了广播,下面做个总结: public class ScreenL ...

  5. Python学习笔记【第九篇】:Python面向对象基础

    Python语言中一切皆对象(类.属性.方法.........) 概念 面向对象编程:Object Oriented Programming 简称OOP 面向对象程序设计 面向对象和面向过程都是解决问 ...

  6. PHP中的自动加载

      自动加载? 或许你已经对自动加载有所了解.简单描述一下:自动加载就是我们在new一个class的时候,不需要手动去写require来导入这个class.php文件,程序自动帮我们加载导入进来.这是 ...

  7. python中numpy.ndarray.shape的用法

    今天用到了shape,就顺便学习一下,这个shape的作用就是要把矩阵进行行列转换,请看下面的几个例子就明白了: >>> import numpy as np >>> ...

  8. gcc编译参数详解一(-ffunction-sections -fdata-sections)

    背景 有时我们的程序会定义一些暂时使用不上的功能和函数,虽然我们不使用这些功能和函数,但它们往往会浪费我们的ROM和RAM的空间.这在使用静态库时,体现的更为严重.有时,我们只使用了静态库仅有的几个功 ...

  9. pycharm中配置启动Django项目

    1.先打开mange.py,然后再运行,会提示一堆东西,表示没有配置参数.在pycharm中点击edit configurations 编辑配置参数. 2.点开之后弹出如下对话框,在scrip par ...

  10. 解决使用display:inline-block时元素间隔问题

    在写个人博客页时出现了一个百思不得其解的问题,不知道为什么出现以下情况: 可以看到,下面的a标签中出现了一个间隔,怎么都去不掉,查阅资料后发现,问题原因如下: 1.第一种解决办法,去掉HTML元素中的 ...