Docker对于部署来说及其重要

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker对于部署来说及其重要相关的知识,希望对你有一定的参考价值。

目前的IT环境发生了很大的变化,有big server到vm server到docker,一步步的敏捷快速,更加合理的利用硬件资源,分离不同环境带来的问题,简化部署。

2016过年的这几天就自学了一下docker,以及在工作中如何实践这一技术提升IT管理效能。

学习的步骤分为5步:

  1. 了解docker与传统方式的差异。3小时
  2. 亲手部署一边docker+asp.net。5小时
  3. install ubuntu
  4. update docker host
  5. install docker client
  6. download?ASP.NET 5 Preview Docker Image form?https://hub.docker.com/r/microsoft/aspnet/
  7. play
  8. 思考如何与实际的项目结合。12小时
  9. 在项目中实践docker。20小时
  10. 总结与团队分享,录视频放到群里。1小时

    ?

    docker相比过去的vm创建、启动、关闭速度更快。dockerhub上有丰富的标准资源开箱即用。更加容易从开发到测试到生产环境的迁移、回滚。每个容器都是沙箱一样相互隔离互不影响。

    目前docker只能运行在liunx下,也就说只能支持asp.net core版本,这个对于现在的项目是一个巨大的挑战,因为我当时选择用asp.net webform来搭建现有的项目,这个问题要如何解决,如何转换成mvc项目,有没有可能直接改为asp.net core版的支持跨平台运行?工作量又多大?

    横向扩展非常屌,通过命令来循环复制N个container,几分钟就搞定了。

    container指运行中的,image指非运行中的,每个历史记录都可以是一个Image。一个image可以运行为多个container;可以通过端口映射形式进行通信。

    ?

    访问的过程有点麻烦:windows docker client -> ubuntu(vmware)->docker host->docker container。过程中还需要去docker hub上拉一个imager下来。需要将docker container的端口映射到docker host的主机端口上,然后再由windows(UA)访问。

    ?

    sudo -i

    输入密码

    [email protected]:~# gedit /etc/apt/sources.list
    把下面的安装源写入

    deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

    ?

    然后更新apt-get

    [email protected]:~#apt-get update

    [email protected]:~#apt-get install docker.io

    [email protected]:~# service docker restart

    ?

    git clone?https://github.com/aspnet/Home.git?aspnet-home

    cd aspnet-home/samples/1.0.0-rc1-update1/HelloWeb

    docker build -t myapp .

    docker images

    docker run -t -d -p 80:5004 myapp

    docker ps

    ?

    firefox localhost

以上是关于Docker对于部署来说及其重要的主要内容,如果未能解决你的问题,请参考以下文章

使用 Docker 一步搞定 ZooKeeper 集群的搭建

MySQL 复制 - 性能与扩展性的基石 2:部署及其配置

学习 Node.js 的 6 个步骤

packstack部署openstacky要多久

Docker应用容器化

离线服务器下docker的部署与应用