Docker的安装及相关使用

版权声明:作者已开启版权声明,如转载请注明转载地址。 https://blog.csdn.net/qq_34829447/article/details/83759467

一.Docker的安装简介

二.在mac上安装Docker

  • 在Docker官网上选择mac下安装
  • 选择Get Docker for Mac(stable)
  • 正常下载安装即可
  • 如果需要我们也可以下载kitemagic(图形化操作界面)

三.在Windows上安装Docker

1.安装条件

  • Win10或Windows Server 2016以上
  • 需要是64位,且有Hyper-V的支持

2.安装过程

  • 直接下载
  • 按照图形界面直接安装即可

四.vagrant&Virtualbox for mac

1.vagrant工具

  • 下载:直接在官网下载即可

  • 使用vagrant可以方便快速的创建Linux虚拟机

  • 创建过程

    • 以前基于虚拟机的工作流,我们需要下载ISO镜像,安装系统,设置系统等操作。而Vagrant开源社区提供了许多已经打包好的操作系统,我们称之为box。你可以从box下载地址(下文列出),找到你想要的box,当然你也可以自己制作一个。

    • 安装box

      • 建立自己的开发环境目录(即创建一个文件夹)

      • 导入安装说明

        • vagrant box add是添加box的命令,{title}是以后创建虚拟机的别名,{url}是下载到本地box的路径,也可以是服务器端的URL。
        vagrant box add {title} {url}
        vagrant init {title}
        vagrant up
        
      • 将box镜像添加到本地仓库,有三种方式

        • 使用http绝对地址

          vagrant box add precises64 http://files.vagrantup.com/precise64.box
          
        • 使用本地文件(从协议来说,和上面一样,相当于file:///协议的地址)

          vagrant box add precises64 ./precise64.box
          
        • 使用仓库名称

          扫描二维码关注公众号,回复: 4014264 查看本文章
          vagrant box add precises64 ubuntu/precise64
          
        • 这种方式,vagrant会自动在中央仓库查找镜像,并下载到本地镜像库中。(省略本地镜像名称,则直接用中央仓库中的镜像名作为本地镜像名,这样做的好处是可以跟仓库中的镜像对应。)

          vagrant box add ubuntu/precise64
          
    • 进入指定文件夹,执行命令vagrant init centos/7会初始化一个vagrantfile文件(描述要创建什么样的virtual machine,可以根据需要进行个性化修改)【centos/7是对应的title】

    • 执行vagrant up启动虚拟机,首先去找centos/7的base box,如果本地有则直接从本地加载,如果没有则从网上下载;之后会创建一个VM;之后会一步一步的创建虚拟机

    • 之后再virtual box中就会看到多创建的虚拟机

    • 在刚才指定的文件夹下执行vagrant ssh即可以登录到刚才创建的虚拟机中,并执行sudo yum update,则会更新一些文件

  • 销毁对应的virtual machine

    • 执行vagrant status可以看到当前的virtual machine的状态
    • 停掉virtual machine机器,执行vagrant halt
    • 删掉virtual machine机器,执行vagrant destory
    • 删掉后,回到virtual box中,就可以发现刚才创建的virtual box就没啦~
  • vagrant命令整合

    命令 作用
    vagrant box add 添加box的操作
    vagrant init 初始化box的操作,会生成vagrant的配置文件Vagrantfile
    vagrant up 启动本地环境
    vagrant ssh 通过ssh登录本地环境所在虚拟机
    vagrant halt 关闭本地环境
    vagrant suspend 暂停本地环境
    vagrant resume 恢复本地环境
    vagrant reload 修改了Vagrantfile后,使之生效(相当于先 halt,再 up)
    vagrant destroy 彻底移除本地环境
    vagrant box list 显示当前已经添加的box列表
    vagrant box remove 删除相应的box
    vagrant package 打包命令,可以把当前的运行的虚拟机环境进行打包
    vagrant plugin 用于安装卸载插件
    vagrant status 获取当前虚拟机的状态

五.在centos上安装Docker

  • 安装requirements

    • 安装依赖

      sudo yum install -y yum-utils \
      device-mapper-persistent-data \
      lvm2
      
  • 添加report

    sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
    
  • 安装Docker CE

    sudo yum install docker-ce
    
  • 启动Docker Service

    sudo systemctl start docker
    
  • 查看Docker版本

    sudo docker version
    
  • 检验是否安装成功

    sudo docker run hello-world
    

六.Docker Machine的本地使用

1.什么是Docker Machine

  • 能够自动在虚拟机上安装Docker engine的工具
  • 通过docker-machine version查看docker-machine的版本

2.Docker Machine的使用

  • 首先执行vagrant destory移除虚拟机
  • 执行docker-machine create demo将在Virtual box中创建一个安装好Docker的Linux虚拟机
    • 虚拟机的名字为demo

3.Docker Machine的命令

  • docker-machine ls查看当前正在运行或已经创建好了的Docker machine
  • docker-machine ssh demo登录docker-machine创建的虚拟机
    • 在机器中执行docker version可以看到docker的版本
  • exit退出docker-machine
  • docker-machine stop暂停docker-machine
  • docker-machine rm移除docker-machine
  • docker-machine restart重启docker-machine
  • docker-machine env demo查看demo的env环境
    • 执行eval ${docker-machine env demo}使本地的Server连接远程的Server环境

七.Docker Machine在阿里云上的使用(使用阿里云Driver)

1.安装阿里云docker-machine driver驱动

2.在阿里云上使用docker-machine

  • 购买阿里云ECS云主机

  • 创建AccessKey ID和secret ID

  • 利用docker-machine创建docker-host即ECS的实例并安装Docker

    • docker-machine create -d aliyunesc表示创建阿里云ecs的驱动
    • aliyunesc-io-optimized表示io优化的参数
    • aliyunesc-instance-type表示阿里云实例的类型
    • aliyunesc-region表示阿里云服务器的实例的地域
    docker-machine create -d aliyunesc --aliyunesc-io-optimized=optimized --aliyunesc-instance-type=ecs.c5.large --aliyunecs-access-key-id=对应的ACCESSKEYID --aliyunesc-access-key-secret=对应的ACCESSKEYSECRET --aliyunesc-region=cn-qingdao 创建的实例名
    
  • 通过docker-machine ls查看所有创建的docker-machine

  • 通过docker-machine env test查看对应docker-machine的环境变量,通过执行eval ${docker-machine env test}将Server制成阿里云的docker-host

  • 如果不想使用远程的docker-machine,则可以使用eval ${docker-machine env --unset},则Client和Server都是本地的

八.Docker Machine在亚马逊AWS云上的使用

1.使用流程

  • 创建AWS的configure credentials:Access Key ID和Secret Access Key

  • 用machine去创建实例

    • 创建~/.aws/credentials文件去管理AWS keys,这样就不需要时刻运行docker-machine create命令

    • 实例代码

      [default]
      aws_access_key_id = AKID1234567890
      aws_secret_access_key = MY-SECRET-KEY
      
    • 运行docker-machine create创建实例

      docker-machine create --driver amazonec2 --amazonec2-open-port 端口号 --amazonec2-region 地域信息 实例名称
      
    • 余下操作与阿里云相同

九.Docker playground

  • 当条件有限,无法在任何环境中安装Docker时,可以在Docker playground(play with docker)上执行运行docker
  • 使用docker用户名和密码登录docker playground,在不安装环境的前提下使用docker

猜你喜欢

转载自blog.csdn.net/qq_34829447/article/details/83759467