在只有一台机器的情况下,该不该用 docker

2021-05-08 15:03:18 +08:00
 chenqh

现在我的配置

centos7+宝塔

主要用宝塔来装 lnmp,和备份数据库

部署用的 ansible

流程是先 sync,然后重启 nginx, git 只在本地使用

一般使用 docker 的流程是, 对于版本 1

打一个版本 1 的 docker 镜像,推到自己私有的 registry 上面去

然后服务器 docker pull 新版本的镜像,然后启动

但是对于单机,这就有问题了,

  1. 没有 registry, 导致只能 docker save 然后 docker load, 但是这个样子没有办法利用到 docker 的分层,会导致每次要传输的体积都很大,想 python 的话,估计最少就是几百 M, 不可取

有没有什么办法在没有 registry 的情况下,开心的用起 docker 呢?

我粗想了一下,难道要用 volumn? 如果是用 volumn 的话,应该怎么做,请指点一下,谢谢

1546 次点击
所在节点    Docker
8 条回复
manami
2021-05-08 15:05:45 +08:00
如果打算用 docker 什么的,先不要用面板这种东西……
mhycy
2021-05-08 15:36:33 +08:00
写 Dockerfile 在线上机器打包不就好了?
lithiumii
2021-05-08 15:37:58 +08:00
也可以用其他地方的 registry 服务
比如我就用的 gitlab 的
THESDZ
2021-05-08 17:07:27 +08:00
用不用 docker 看需求,如:
1.如果只用 docker 的话,目的是环境隔离和一次构建,到处使用,有需求就用
2.如果也使用了编排,那就必须使用

docker-image
1.搭建一个私服,或者使用现有的
2.直接宿主机 docker build 作为部署脚本的一部分,使用本地仓库
THESDZ
2021-05-08 17:09:29 +08:00
@THESDZ
我是习惯用,直接上编排,轻量的 k3s 或者 dockerswarm
1.自动化运维
2.方便加机器
3.使用其他的优秀开源项目很方便
4.环境隔离

我的解决方案是,直接宿主机构造 docker 镜像
或者使用 hub.docker.com
chenqh
2021-05-08 17:37:10 +08:00
@mhycy 那只能这个样子了
julyclyde
2021-05-08 18:04:23 +08:00
如有疑问,那大概率是不需要用的
需要的人都明确知道自己需要
chenqh
2021-05-08 21:13:26 +08:00
@mhycy 有个问题,多个 docker logs 怎么 logs 多个 container, 想 tail -F *.log 这样?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/775653

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX