关于 docker 使用问题咨询 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
sxw11
V2EX    程序员

关于 docker 使用问题咨询

  •  
  •   sxw11 2019-06-28 11:08:22 +08:00 3102 次点击
    这是一个创建于 2349 天前的主题,其中的信息可能已经有所发展或是发生改变。

    小菜鸟一枚,最近苦于配置各种环境,想学习一下 docker 的使用,有几个问题咨询一下大家

    背景:

    一个 web 应用包含以下几部分,授权服务,业务服务,数据库服务,RabbitMQ 服务,Logstash 服务,redis 服务,Elasticsearch 服务。

    问题:

    目前情况是每一个服务部署在单独的服务器( EC2 )上,管理起来很麻烦。

    咨询:

    那我是不是可以把每一个服务都放到一个 Docker 容器里面,放在一台大的机器或者直接托管在现有的云容器服务上,这种用法正确吗?

    因为我们不需要大规模的拆分业务服务做分布式集群,用 Docker 是不是大材小用,有点困惑。 希望各位大佬给点意见,我这方面经验确实太少。

    11 条回复    2019-06-28 15:44:29 +08:00
    leorealman
        1
    leorealman  
       2019-06-28 11:45:38 +08:00   1
    Docker 只是提供了一个应用运行的环境,其实你用物理机、虚拟机、云主机都可以运行你的应用,只不过每次都要安装运行环境(解释器、依赖包等)。Docker 就是把安装运行环境给打包了,你可以为每个应用制作对应的 Docker 镜像,最主要的作用还是节省资源和方便快速迭代开发。
    anubu
        2
    anubu  
       2019-06-28 11:54:06 +08:00   1
    生产中是这么使用的。
    每个服务一个容器,整个项目可以放在一个统一的 docker-compose 文件里管理。
    不存在大材小用的问题,和分布式集群部署没有关系,任何需要做隔离部署的场景都可以考虑使用 docker。
    你这边的迁移主要还是考虑性能问题,毕竟之前是每个服务独占服务器的。
    sxw11
        3
    sxw11  
    OP
       2019-06-28 12:04:50 +08:00
    @leorealman @anubu 感谢大佬们指点
    rqxiao
        4
    rqxiao  
       2019-06-28 13:11:37 +08:00   1
    dokcer-compose 多容器编排就可以你的需求
    pmispig
        5
    pmispig  
       2019-06-28 13:55:40 +08:00   1
    放在一台大的机器或者直接托管在现有的云容器服务上。后者基本上不行,前者勉强可以。但是你作为一个新手来说,也是墙裂不推荐你这样做的。一个不好,一个服务就把 CPU 占光,其他服务 GG
    doco
        6
    doco  
       2019-06-28 15:30:22 +08:00   1
    我最近也在考虑这个事情...不过我的比较简单, 只有 nginx, node, mongodb 和 vpn, 主要是为了方便迁移, 不知道该每个应用都弄一个 docker 还是合到一起.
    xfriday
        7
    xfriday  
       2019-06-28 15:33:25 +08:00   1
    上 k8s / swarm 容器编排
    ri0day
        8
    ri0day  
       2019-06-28 15:33:40 +08:00   1
    第一,生产环境或不要把这些服务放在一个机器上,docker-compose 显然不适合你生产环境使用.
    第二, 现在很少有单纯只用 docker 去跑一套企业级的应用 一般都是放在 kubernetes 上跑.
    建议你先一步步来:
    把你提到的这些组件先一个个迁移到 docker 上能运行
    然后在测试环境用 docker-compose 把这些服务串起来
    有了前面的知识积累,了解一下 kubernetes 的 pod/deploment /service /configmap/pvc /ingress 这些概念以后,最后把这些组件部署到 kubernetes 上.
    abcdocker
        9
    abcdocker  
       2019-06-28 15:43:00 +08:00   1
    之前写过一个 K8S 容器日志收集,你可以考虑一下。 将应用部署在 k8s 上
    https://i4t.com/3642.html K8s 容器日志实时收集 FileBeat+ES+Kibana
    https://i4t.com/3211.html K8S 企业集群
    EasyProgramming
        10
    EasyProgramming  
       2019-06-28 15:44:22 +08:00   1
    同 7 楼,推荐做容器编排
    Chinsung
        11
    Chinsung  
       2019-06-28 15:44:29 +08:00   1
    生产环境的话,最起码的防单点,也不适合你用 docker 全部署在一台机器上
    你要是觉得依赖和环境配置麻烦,可以自己搞个 docker 的基板镜像,里面搞上环境依赖和应用,部署和你现在一样,每台机器跑个 docker
    你要是觉得部署起来麻烦,手动步骤过多的和复杂的可以考虑自动化部署,或者想办法换一种部署方式和提升部署效率
    像你这种,负载还可以的话,redis 和 mq 这两个可以放一台机器上,灵活的考虑吧
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1122 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 17:40 PVG 01:40 LAX 09:40 JFK 12:40
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86