最近学习了一段时间 Docker,发现真是个好东西。比 Java 靠谱,真正一次构建,到处乱跑。
镜像容器管理,省去了好多配置环境的工作。
想问问各位大佬们平时在项目中用的多吗? 生产环境都用这个了吗?还是只是用来本地开发环境的。
Docker 入门的一些小知识: http://h5ip.cn/8XPO
1
xiaochen2018 OP 求各位大佬推荐 Docker 进阶的书籍和课程
|
2
glacer 2018-11-07 11:23:20 +08:00 27
docker 比 Java 靠谱又是什么鬼
|
3
Phariel 2018-11-07 11:25:03 +08:00 via iPhone 6
你第一句话就暴露了你的水平
|
4
xiaochen2018 OP @glacer Java 不是 write once,run everyone 嘛。哈哈
|
5
xiaochen2018 OP @Phariel Java 不是 write once,run everyone 嘛。
|
6
maichael 2018-11-07 11:26:45 +08:00
你在 Windows 折腾过 docker 吗?
|
7
xiaochen2018 OP @maichael 没有啊,都在 Ubuntu 和 MacOS 呢
|
8
zjsxwc 2018-11-07 11:27:59 +08:00 via Android 16
铁锅比香肠好吃?
|
9
xiaochen2018 OP @zjsxwc 没有好的铁锅,做不好吃哈哈。求大佬指导
|
11
xiaochen2018 OP @fumichael 哈哈哈哈
|
12
xiaochen2018 OP 各位老哥们,能不能正面回答下问题啊,正式环境大家都用 Docker 吗?
|
13
jmc891205 2018-11-07 11:47:31 +08:00 2
|
14
xiaoyaoking 2018-11-07 11:49:46 +08:00 via Android
编译环境用 docker,生产环境,本地小项目是跑过还挺稳定的。真正涉及业务的还没跑过。
|
15
hasbug 2018-11-07 11:50:58 +08:00
学不懂
|
16
boris1993 2018-11-07 11:53:38 +08:00 via Android
你的英语水平.............
everyone - 所有人 everywhere - 任何地方 还比 Java 靠谱.......这俩根本就不是一类东西好吗喂! |
19
fuxiaohei 2018-11-07 11:57:41 +08:00
你需要找一些文章先看一遍 docker 生态,已经很健全了。
大厂有大规模容器使用,不是什么新鲜的技术了。 |
20
leconio 2018-11-07 11:59:49 +08:00 via Android
用了 docker,解决了我 python 跑 web 一大痛点。顺便吐槽下,python 有跨平台和版本兼容吗???
|
21
jjxh 2018-11-07 12:02:50 +08:00
#17 这个翻译满分
|
22
Seanfuck 2018-11-07 12:06:02 +08:00
@xiaochen2018 我厂是用的,全部应用都用。
|
23
des 2018-11-07 12:08:36 +08:00 via Android
java 是一次编译,到处调试
|
24
Mac 2018-11-07 12:09:19 +08:00 via Android
楼主的意思是社区比开发商靠谱…?
|
25
huclengyue 2018-11-07 12:10:11 +08:00 via Android
docker 跟 java 有什么关系。。
|
26
thet 2018-11-07 12:37:41 +08:00 via Android
业务全部 dockerize
|
29
xiaochen2018 OP @hatsuyuki 哈哈哈,见仁见智
|
30
xiaochen2018 OP @thet 微服务分布式离不开了吧
|
31
xiaochen2018 OP @boris1993 哈哈哈 看走眼了,百度输入法智能提醒
|
32
xpresslink 2018-11-07 12:52:56 +08:00
现在在生产环境用的是很普遍的,通常互联网公司都在用。
弹性资源占用是很大优势,需要持续集成快速迭代的项目通常都容器化部署。 |
33
yx1989 2018-11-07 12:53:27 +08:00
在线业务全部 docker 化
|
34
xiaochen2018 OP @yx1989 好的呢,谢谢老哥
|
35
xiaochen2018 OP @xpresslink 谢谢,领教了
|
36
zzzcx 2018-11-07 12:57:02 +08:00
不仅仅是 docker,还用 k8s。。。
|
37
Perry 2018-11-07 12:59:56 +08:00 via iPhone
生产环境还得靠 k8s
|
38
xiaochen2018 OP @zzzcx 是的呢,最近也在看
|
39
xiaochen2018 OP @Perry 谢谢,领教了
|
41
lhx2008 2018-11-07 13:07:57 +08:00 via Android
docker 在 win 上面就算了。。java 倒没啥事
|
42
xiaochen2018 OP @acoin 哈哈,没关系必须要有自嘲精神。没这么厚的脸皮我发毛帖子
|
43
acoin 2018-11-07 13:41:31 +08:00
@xiaochen2018 可以
|
44
iyaozhen 2018-11-07 13:48:01 +08:00
有用,但是小问题比较多,对开发者有一定要求,还在吃螃蟹
|
45
lmdtx 2018-11-07 14:04:32 +08:00
再用 docker swarm
|
46
yuanfnadi 2018-11-07 14:07:18 +08:00
你知道 Mac 下面的 docker 其实是装了一个虚拟机么。
|
47
xixijun 2018-11-07 14:10:36 +08:00
生产环境用的 k8s / docker-compose
|
48
starsky007 2018-11-07 15:03:15 +08:00 via Android 8
人家不懂来问问,何必抓住一个小错不放呢,也不帮忙解答一下,阴阳怪气的
|
49
vanishcode 2018-11-07 15:06:44 +08:00 via Android
都是 k8s 咯
|
50
guoyuchuan 2018-11-07 15:08:39 +08:00
使用的人越来越多了
|
51
xiaochen2018 OP @starsky007 真心谢谢老哥了!感谢
|
52
xiaochen2018 OP @xixijun 是啊,Docker-compose 有用的。看来要学学 k8s
|
53
acoin 2018-11-07 15:21:53 +08:00
@xiaochen2018 Docker-compose 没法用集群吧 生产不应该是 swarm+stack 么
|
54
Dzer0 2018-11-07 15:41:45 +08:00
kubernetes 了解一下,可以上生产。
|
55
mosesyou 2018-11-07 15:50:40 +08:00
用的,我们还在 k8s 上层搭建自己的云平台
|
56
puperSB 2018-11-07 16:31:46 +08:00
公司的大业务都上的 docker,bat 也有很成熟的方案。集群不一定用 k8s,swarm 也是可以尝试的
|
57
znood 2018-11-07 16:46:07 +08:00 via iPhone
坑比较多,用起来就有坑了
|
58
afc 2018-11-07 16:47:39 +08:00 1
docker 比 java 好是肯定的,但是没有 MySQL 好用。
|
59
xmge 2018-11-07 17:00:25 +08:00
|
60
my101du 2018-11-07 17:06:37 +08:00
弱鸡请教下大家关于 docker 部署相同代码到不同机器后, 配置文件维护的问题:
一套代码,不同的配置参数(.env 文件,以及 nginx 的虚拟主机配置文件,ssl 证书相关)。 使用 githook + genkins, 实现推送一次更新,多个服务器自动更新文件、重启容器。 但是,那一大堆配置文件维护起来很痛苦啊。 要改动一个参数,还是得 SSH 登录到每台服务器上去修改。 我现在的办法是把这些配置文件也做成 git 仓库,更新后用 jenkins 去覆盖。。。。总感觉不对。。 |
61
xpresslink 2018-11-07 17:24:39 +08:00 1
@my101du
你需要一个集成调度的库来存放配置信息,在启动容器的时候把参数传入,比较常见的是用环境变量方式。有一些则需要用中间件,比如 consul 来保存配置信息,容器内的应用从 consul 拉取配置。 |
62
liuxliang 2018-11-07 17:27:15 +08:00
k8s+gitlabci+docker
|
63
arrow8899 2018-11-07 17:32:09 +08:00 1
@my101du 为什么还要配虚拟主机和 ssl 呢,服务间调用直接走服务发现 RPC 调用吧,然后业务配置参数可以用携程 Apollo,配置文件可以用 Spring Cloud Config,哪有你这么复杂
|
64
realpg 2018-11-07 18:50:26 +08:00
不用。。。
|
65
tomxin7 2018-11-07 18:51:32 +08:00
个人项目用 docker
|
66
zhangalong69 2018-11-07 18:54:21 +08:00
开发和测试环境用 docker,正式环境还是用的物理机
|
67
AmorZhang 2018-11-07 18:58:25 +08:00 2
真要比起来 还是 css 靠谱
|
68
szetrov 2018-11-07 19:09:50 +08:00
玩玩可以,拿它当个终端虚拟机。。。真正发挥容器化威力的地方我还没了解过
|
69
mritd 2018-11-07 19:17:56 +08:00 via iPhone
线上 k8s 集群
|
72
owenliang 2018-11-07 19:43:53 +08:00 via Android
这两天看跨节点网络的方案,真是天坑。
|
73
HelloAmadeus 2018-11-07 19:48:43 +08:00 via Android
公司内部产品全部上 kubernets 了,有些客户也切换成 kuberbets 了
|
74
xiaochen2018 OP @afc 相辅相成哈哈
|
75
salamanderMH 2018-11-07 20:04:18 +08:00
k8s
|
76
twl007 2018-11-07 22:39:22 +08:00 via iPhone 1
@my101du 切换到 k8s 上 然后用 helm 管理 写一个生成不同机器上 values 模板的脚本就行了 我们又跟你一样的问题 就是通过动态生成 helm chart 的方式来解决的 更新的时候只需要把模板更新完脚本会根据模板自动创建不同的 helm chart
|
77
feelinglucky 2018-11-07 22:50:27 +08:00
楼主拿 docker 和 java 比估计是「虚拟机」的概念搞混了吧…
|
78
yuikns 2018-11-07 23:05:01 +08:00
docker 是基于 cgroup 的一个容器。这个概念又没什么难懂的。楼主就是想说 docker 在做开发-测试-生产环境一致性做得更加容易和彻底。
kubernets 一键上线自动横向扩展就是容易。数据放到 oss 放到 hdfs 放到 s3 就是不怕事。 https://pic3.zhimg.com/80/v2-c156cc46785bdbeb66c36db81751f2e2_hd.png 😂 |
79
yuikns 2018-11-07 23:12:35 +08:00
@yuikns 额.. 手快..
docker 是基于 namespace, cgroup, device mapper 等的... |
80
Raymon111111 2018-11-07 23:18:51 +08:00 1
嗯 我也觉得 git 要比 Java 好用
|
81
xoxo419 2018-11-07 23:28:51 +08:00
生产上用上了, 但是现在有点箱撤下了. 不是说 docker 不好 只是宝刀还需要一个能驾驭的人.....
现在有些问题就卡了~ |
82
fundebug 2018-11-07 23:48:17 +08:00 1
我们 Fundebug 上线 2 周年了,一直在生产环境用 Docker,没毛病。感兴趣的话,阔以参考我们的博客:
https://blog.fundebug.com/2018/07/19/technology-selection-is-not-critical/ https://blog.fundebug.com/2018/01/10/how-to-clean-docker-disk/ https://blog.fundebug.com/2017/03/27/nodejs-docker/ https://blog.fundebug.com/tags/Docker/ |
83
RobertYang 2018-11-08 00:21:14 +08:00 via Android
胡说我们浏览器也比 Java 靠谱
|
84
tnt666666 2018-11-08 00:46:00 +08:00 via Android
为什么现在人才这么多?
|
85
shanigan 2018-11-08 04:02:47 +08:00
docker 最重要的一点优势不就是 containerization? 让开发测试生产环境一致,更加 portable。有什么理由在开发环境用 docker,生产环境不用呢?如果你的 host 都是 linux,docker 对性能的影响几乎可以忽略不计,完全没理由不用。加上 kubernetes 这些 orchestration tool 的帮忙,非常容易 scale up。
|
87
LinkT 2018-11-08 08:07:35 +08:00 via Android
此贴是个照妖镜。
|
88
my101du 2018-11-08 08:58:06 +08:00
|
89
xiaochen2018 OP @LinkT 哈哈,有意思。照妖镜
|
90
xiaochen2018 OP 谢谢楼上的各位的经验
|
91
xiaochen2018 OP @shanigan 非常感谢,领教啦
|
92
cyril4free 2018-11-08 09:33:02 +08:00
个人感觉结合微服务才能发挥 docker 的最大功力。。之前的项目跑在 docker 里,反而会被束缚
|
93
37Y37 2018-11-08 09:42:09 +08:00
我也也用了一年多,这里有介绍基于 Docker 构建的整个 devops 流
https://mp.weixin.qq.com/s/GATfwNETo_aGsJHZdV5YzQ |
94
virus94 2018-11-08 10:13:13 +08:00
战略 mark,一个 phper 在学 docker 0.0
|
95
genjigjj 2018-11-08 10:15:34 +08:00
反正我公司在用,确实挺好用的
|
96
shuizhengqi 2018-11-08 10:27:04 +08:00
所以是为了宣传自己网站喽,顺便说一句,并不是所有情况都是 docker 好用
|
97
nekoneko 2018-11-08 12:54:16 +08:00
我们的客户只给提供 Windows Server 服务器,docker 无缘了。。
|
98
will0404 2018-11-08 12:56:24 +08:00
怎么阴阳怪气的人这么多也没人给楼主纠正一下。。。
一个是容器,一个是开发语言,前面的人嘲讽你是因为这两不应该放在一起比较。就像那位说‘铁锅比香肠好吃 ’一样。楼主懂了吗。 |
99
xiaochen2018 OP @will0404 哈哈哈我当然知道啊,就是想调侃一下 Java
|
100
ericgui 2018-11-08 13:06:30 +08:00
v 站也被知乎带坏了,开始到处怼人了,这不好。
|