V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jarlyyn
V2EX  ›  Docker

求教,这样使用 docker 是否靠谱。

  •  
  •   jarlyyn · 2015-02-26 10:34:01 +08:00 via Android · 3741 次点击
    这是一个创建于 3594 天前的主题,其中的信息可能已经有所发展或是发生改变。
    由于业务需要,公司目前需要维护20多个vps。系统环境基本一致,以lamp为主。由于服务器分布在不同的服务商处(阿里最多杭州15个,然后是香港5个,l记大概5个,某小供应商处3个),外加公司内网,我自己的笔记本,开发的测试环境,以及部分客户需要代维护的服务器,环境从centos 6.1 6.3 6.5,到debian 6 7 ,ubuntu不等,vps 还不能升内核,公司运维还要离职,最近的安全升级升的我欲仙欲死。

    目前准备自己配置一套centos 7(虽然我是debian党,但毕竟debian 8快发布了,而且 centos好招)为主的镜像,把 apache php nginx python nodejs mysql redis 等常用程序全部安装好,自启动全部关闭,通过 -v命令挂载不同的启动脚本,来实现不同的环境。然后通过git维护一套配置管理以及生成程序。
    我做过测试,镜像里安装的程序再多,不运行的时候内存占用似乎也差不多?

    问题1:我这情况是否是用docker比用安装脚本靠谱?
    问题2:是所有程序安装在一个image挂载不同的启动脚本靠谱,还是安装在不同的image靠谱?
    10 条回复    2015-02-26 19:14:49 +08:00
    bcxx
        1
    bcxx  
       2015-02-26 10:44:20 +08:00   ❤️ 1
    问题 2: 不同的 image …… 一个 docker image 一般都不建议装太多应用的吧
    jarlyyn
        2
    jarlyyn  
    OP
       2015-02-26 10:50:30 +08:00 via Android
    @bcxx 不建议装太多应用我能理解,但我本身的目的是统一环境,增加运维效率,不知道这样做是否会产生什么我没发现的问题
    66450146
        3
    66450146  
       2015-02-26 10:56:48 +08:00
    @jarlyyn 如果某个应用需要扩容的话可以简单启动,只需要在中心化的 discovery service 上面注册一下就能被大家访问到
    jackysc
        4
    jackysc  
       2015-02-26 10:56:53 +08:00   ❤️ 1
    问题1 docker更方便,比安装脚本更靠谱
    问题2 装在不同的image方便维护
    webflier
        5
    webflier  
       2015-02-26 11:16:41 +08:00   ❤️ 1
    感觉ansible 或者saltstack之类的轻量级工具更适合你的场景。
    当然,用你最熟悉的是不会错的。
    jarlyyn
        6
    jarlyyn  
    OP
       2015-02-26 14:52:38 +08:00
    @webflier
    感谢您的推荐。不过看了下,和我的需求不是很一样。
    我基本每个vps是跑的不同的独立网站,主要是要环境一致,而非配置文件一致。
    9hills
        7
    9hills  
       2015-02-26 15:13:14 +08:00   ❤️ 1
    没啥问题。
    如果你一个image搞定全部需求,且你其他的业务都是基于此baseimage。那么这样其实挺省事的。机器上也只需要都提前pull好这个baseimage就可以了。
    9hills
        8
    9hills  
       2015-02-26 15:14:48 +08:00
    另外你这个需求,最好在『https://github.com/phusion/baseimage-docker』上继续搞。

    这是典型的一个Container部署多个进程的场景。虽然官方不推荐,但是某些场景还是挺有用的。
    jarlyyn
        9
    jarlyyn  
    OP
       2015-02-26 18:18:20 +08:00
    @9hills

    谢谢推荐,不过基于ubuntu的,个人更倾向于使用debian和centos的。

    另外,其实一个image安装多个程序,和一个Container部署多个进程,也是两个概念吧。每个进程用同一个image run也可以啊。

    到底一个容器部署几个进程,我还在考虑。
    dalang
        10
    dalang  
       2015-02-26 19:14:49 +08:00   ❤️ 1
    我也建议你针对不同场景做多个 image,可以做一个 base image,把基本需要的应用先安装。然后基于这个 base image 为不同场景定制不同的 images。
    把相应的启动脚本拆解到 docker file 里,这样你能方便的管理不同 docker images。

    docker 是不推荐打造一个大而全的 image 的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2446 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:40 · PVG 23:40 · LAX 07:40 · JFK 10:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.