有多少后端开发环境不用docker的?

发布于 2022-09-13 01:03:01 字数 157 浏览 34 评论 0

最近公司在推行使用docker,要求开发人员开发环境使用docker进行开发,于是看了下docker的东西,感觉好麻烦啊,这玩意就是将运行环境搞成镜像,放到docker里面,然后宿主机不需要环境了,代码放到docker里面运行。但是我开发的时候,随时都可能添加依赖扩展啊,要重新打镜像? 好麻烦的样子

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

过期情话 2022-09-20 01:03:01

使用 docker 来构建开发环境,想法是美好的,只需要写写 docker-compose.yml 和 Dockerfile ,就能构建起一个开发环境,并且还能让每个开发人员的环境都是一样的,还可以达到同步环境的效果,减少了像 “在我这儿好好的呀,怎么到你那儿就不行了” 这样的麻烦。

但是,有个问题就是,大多数人都是用的 Windows 作为开发机,而 docker 的最佳运行环境是 Linux,因为这玩意儿在 MAC OS 还存在 IO 问题,体验也不是很好。

docker 在 Windows 上运行又有几个问题,在旧的 Windows 上,比如 7,要想使用 docker ,下载 docker toolbox ,他实际上是使用 virtual box 创建了一个虚拟机来提供给你访问。

你就需要创建目录共享来写代码,这样就会造成很严重的 IO 问题,导致你的项目访问奇慢无比。

在 Windows 10 上面,你倒是可以使用 WSL 来使用 docker,然而 WSL 仍然没有逃过 IO 问题,不过 WSL 提供了一种方法,在 WSL 里面安装/运行 docker,这样比虚拟机稍微好一些(不需要 Docker-Desktop)、并且不能使用 /mnt/ ,你需要把你的项目全部放到 WSL 下面去,不过好在现在 IDE 都提供了 WSL 的支持,虽然看起来很蹩脚,现在你差不多可以愉快的使用 docker,但是 WSL 的实际体验也并不那么好……

要想极致的体验,你最好是使用 Linux 操作系统,不过就我遇到的而言,如 Ubuntu 桌面的软件使用体验并不太好,尤其是使用 php storm 的时候。

使用 docker 的好处是很多,但是把 docker 作为开发环境,并且找到一个舒适的开发方式,很麻烦。

可爱咩 2022-09-20 01:03:01

当然有很多,甚至可以说不用 docker 的才是大部分。

毕竟不是只有互联网大厂才有软件开发,很多人看不起的传统软件外包其实才是占据 IT 行业的大部分人群

对于你的顾虑,我只能说,压根没有 CI/CD 流程或 DevOps 体系建设不好的团队,用 docker 确实往往麻烦 > 收益。但路当然都是一步一步走出来的,哪能一口吃个胖子呢?

P.S. 我公司反正是全部产品线都有在用。


补充:对于另一个回答的一些见解

image.png

如梦初醒的夏天 2022-09-20 01:03:01

docker做开发环境?这是怎样的脑回路才能想出来的玩意?真以为docker包打天下了?

末が日狂欢 2022-09-20 01:03:01

原来搞 python 、java 、ruby 的时候,都在本机搭开发环境,后来有了 docker,直接把开发环境建到 docker 中,然后把源码映射到容器中去,这样各个开发环境都是隔离的,而且也提高了部署效率。 看看我这个项目(https://gitlab.com/Kangjier/d...
有条件,一定要上虚拟化平台进行开发。好处如下:
1.如果只在一台物理机里开发,各种东西,比如 java 、C++、python 都要安装,而且有些软件比如 java 还要安装几个版本。混乱的环境,给开发会带来很多问题,处理起来,又好气又好笑,简直浪费时间。
虚拟化环境就没这个问题,先建立一个干净的模板,然后直接复制粘贴一堆出来,每个克隆后的环境,只安装一个系统。这样干净的系统,基本上不会出问题。
2.如果只在一台物理机里开发,你还要安装 QQ 与微信等一堆软件。这些东西就是祸源。如果长期不关机,这些软件经常搞坏 explorer.exe ,会出各种奇怪问题,比如桌面上,鼠标右键菜单没办法弹出来,有时候远程桌面又无法复制粘贴,等等。
出现了这种问题,系统得重启,但我已经打开了一大堆浏览器,里面很多资料还没看完;以及当前一堆软件开着一堆源码,在重启后,还要按顺序打开,特别浪费时间。
自从我把微信与 QQ,专门放到一台 IM 的虚拟化环境中去之后,再也没出过这种问题。微信与 QQ 想捣乱,直接重启那个虚拟化环境就行了,不影响开发。我甚至把开发、网页浏览、IM 、数据库软件等等,每一种工作,专门部署在一个虚拟化环境里,互相不影响。甚至连 Java 开发,也是部署了 3 个环境,一个给 8,一个 11,一个最新版。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文