• 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

      输入密码

      root@linuxidc:~# 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

      root@linuxidc:~#apt-get update

      root@linuxidc:~#apt-get install docker.io

      root@linuxidc:~# 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

    作者:WinsonXu 出处: http://winsonxu.cnblogs.com/ 微信winsonhsu 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如果觉得还有帮助的话,可以点一下右下角的【推荐】,希望能够持续的为大家带来好的技术文章!想跟我一起进步么?那就【关注】我吧。
  • 相关阅读:
    AndroidStudio项目CMakeLists解析
    Xposed那些事儿 — xposed框架的检测和反制
    从谷歌官网下载android 6.0源码、编译并刷入nexus 6p手机
    编译Xposed
    常用的delphi 第三方控件
    delphi安装控件
    delphi控件安装与删除
    从今天开始,每天都要写博客,加油
    关于ArrayAdapter的getCount()的方法会造成空指针异常的分析
    实现ListView的加载更多的效果,如何将按钮布局到始终在ListView的最后一行
  • 原文地址:https://www.cnblogs.com/winsonxu/p/5184786.html
Copyright © 2020-2023  润新知