可以用docker代替虚拟机,运行生产服务器吗?

可以用docker代替虚拟机,运行生产服务器吗?,第1张

正面回答这个问题之前,先看看虚拟机和Dcoker的区别。
总结一下虚拟机和Docker的区别:
再正面回答一下“Docker可以代替虚拟机运行生产服务器么”?
应用部署到服务器上的过程: 因为我是做java开发的,就拿一个正常的java项目举例。首先需要在服务器上搭建基础环境:

这只是一个简单的项目的部署前的配置,之后把您的项目打包发送的tomcat,运行即可。那如果有十几个服务器需要部署呢?是不是就要配置环境十多次,那人不是崩溃了。而且还会出现开发那边运行没问题,部署上去有问题的事情。所以这个时候docker出来了。
应用部署到docker上的过程:

两步搞定,不需要配置复杂的环境。如果有十多个容器需要部署怎么办?直接远程下载镜像即可,是不是很简单。

docker适合平台统一在linux的大单位用,服务越多越好,比如几百、几千、几万。配合k8s调度和微服务改造、加上自动化运维,能够实现d性扩容和缩容,达到on demand的效果,典型的用例是互联网内容提供商。

对于一般中小企业,只有几十台服务器的,平台不统一的,投资docker不如虚拟机。

除了不能跨os平台,docker的另一个缺陷是隔离度不够。

先说答案:可以,但是没有必要。

容器技术是虚拟化技术的应用,使用容器代替虚拟机运行程序自然是可以的,容器在持续集成方面相对虚拟机还有一定的优势,但是如果仅仅是为了用容器而用容器,则没有必要。

容器技术最大的优势是容器编排,可以实现线上服务的无缝扩容,缩容,降级,熔断等自动化 *** 作,极大的降低运维成本。所以,如果不用容器编排,则无须急着迁移。

理论上完全可以的,但目前我所接触到的生产方案基本上都是docker在虚机集群上跑。

看系统的要求了。docker不可能完全替代全部,windows服务器不可以,软件系统没有使用docker重新加载的,也是很难的。

用docker需要配合自动化,否则那是给自己找麻烦

1、超时原因
外部网站,国内访问时可能会超时
2、解决方法
修改Dockerfile,使用国内的alpine源
21、正确的做法
正确的做法是使用国内源完全覆盖 /etc/apk/repositories
在Dockerfile中增加下面的第二行
22、可能有问题的做法
追加国内源(echo后面双大于号),此时可能依然超时,因为默认的/etc/apk/repositories里面就有国外的源
追加方法
调试一下可以看到默认的国外源
在Dockerfile中增加一条命令
执行时可以看到全部的源
文章知识点与官方知识档案匹配
网络技能树首页概览
22502 人正在系统学习中
打开CSDN APP,看更多技术内容
最新发布 基于alpine进行dockerfile 构建时,修改apk源
这里提供一种在dockerfile中修改源的方法:在 RUN的第一步,先修改源,并使其生效。时,一直卡住,最后显示超时。这是因为众所周知的原因,只需修改apk的源即可。在基于alpine进行dockerfile 构建时,当进行到。
继续访问
docker Failed to fetch >默认的情况下,docker启动的容器经过日积月累,会产生很多的大文件,大到足以撑满服务器的磁盘空间。这个时候该怎么办呢?答案当然是扩容了。

这里给一个常规的解决思路,给云服务器增加一块大磁盘,然后将docker的文件全部移到新挂载的磁盘里,再为docker创建一个软链接即可。

示例中的磁盘并不是另外加的一块,而且之前就存在的磁盘,但是有一大部分空间未分配。但实际上这跟新加的磁盘处理方案是一样的,下面就以此为例做个简单介绍。

查看磁盘情况

可以看到xvda磁盘有200G的空间,但是只挂载了50G左右的,剩下的都在空闲状态,现在需要将剩下的150G左右的空间给利用上

执行以下命令,建立分区

按提示输入 m 可查看命令帮助
输入 p 查看当前磁柱请情况
输入 n 新建分区,并按提示选择分区类型,及起始和结束扇区
然后输入 w 保存
最后再用 reboot 重启服务器

重启服务器之后,为刚刚建立的分区格式化

可以用以下命令查看下挂载后的结果

之前这台服务器的根目录使用100%的磁盘,经过这个方法处理之后,降到45%了。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zz/13440930.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-06
下一篇 2023-08-06

发表评论

登录后才能评论

评论列表(0条)

保存