安装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. Activiti工作流数据库表详细介绍

    Activiti的后台是有数据库的支持,所有的表都以ACT_开头. 第二部分是表示表的用途的两个字母标识. 用途也和服务的API对应. ACT_RE_*: 'RE'表示repository. 这个前缀 ...

  2. 26.HashCode

      在前面三篇博文中讲解了(HashMap.HashSet.HashTable),在其中不断地讲解他们的put和get方法,在这两个方法中计算key的hashCode应该是最重要也是最精华的部分,所以 ...

  3. Python基础理论 - 常用模块

    time模块:时间戳.时间字符串.时间对象以及如何转换 random模块:随机小数.整数.区间,随机列表元素,打散列表 os模块:与操作系统交互的一个接口,os.path操作文件的路径 sys模块:s ...

  4. AbstractRoutingDataSource 实现动态切换数据源

    扩展AbstractRoutingDataSource类 package com.datasource.test.util.database; import org.springframework.j ...

  5. nginx 开启gzip 压缩资源

    upstream sems { server 127.0.0.1:10171 weight=1 fail_timeout=0; } server { listen 80; server_name ww ...

  6. Dubbo 源码分析 - 集群容错之 LoadBalance

    1.简介 LoadBalance 中文意思为负载均衡,它的职责是将网络请求,或者其他形式的负载"均摊"到不同的机器上.避免集群中部分服务器压力过大,而另一些服务器比较空闲的情况.通 ...

  7. QQ现状深度剖析:你还认为QQ已经被微信打败了吗?

    本文来自“人人都是产品经理”公众号作者栗栗粥的原创分享. 1.前言   移动端的时代里,微信占据了社交领域的半壁江山,不得不让人想起曾经PC时代里的王者“QQ”,微信的爆发和QQ的停滞让很多人认为微信 ...

  8. 读《Linux Shell脚本攻略》(第2版) 一遍、二遍体会

    前段时间读完了<Linux Shell脚本攻略>(第2版)这本书,给部分想读这本书的人分享下个人感受. 第一遍体会解读:就像黑夜中的灯塔,指明前进的道路. 推荐指数:强烈推荐. 书中讲解的 ...

  9. 机器学习入门02 - 深入了解 (Descending into ML)

    原文链接:https://developers.google.com/machine-learning/crash-course/descending-into-ml/ 线性回归是一种找到最适合一组点 ...

  10. JavaScript变量转换

    JavaScript变量转换 目录 自动转换 (1)Number与Boolean (2)Number与String (3)String与Boolean (4)null的自动转换 (5)undefine ...