docker - docker容器访问旧版本
问题描述
我有一个基于图像节点的 docker 图像:lts-alpine with Express Gateway
当我在服务器上部署我的 docker 时,我发现有时它会重用旧图像(docker 上没有请求日志,并且行为是旧版本的行为)
如果我尝试从外部端口上的 docker 外部启动 wget 命令,我会得到这种行为,并且如果我进入 docker 并从内部启动它,它可以正常工作(从 docker 内部我可以看到新的源代码) .
更糟糕的是行为不稳定,有时它可以正常工作,有时它会回到旧版本
我尝试了以下方法:
- docker 图像修剪 -a
- docker系统修剪-a
- 完全删除 docker 并重新部署它
- 清除浏览器上的缓存并从新浏览器重试(以避免缓存)
- 使用 --no-cache 构建 docker
- 清除 nginx 缓存
更新:我在docker容器中安装了tcpdump,当它切换到旧版本时,它实际上并没有进入这个docker(甚至杀死了节点进程并且仍然得到响应)。我检查了所有 docker 卷和图像...我还能检查什么?
解决方案
推荐阅读
- c# - 计算除中的所有字段
- javascript - Javascript forEach 函数覆盖自身
- android - Firebase 不会在真实设备上检索数据,但在模拟器上正常工作
- java - 为什么 Override 方法仍然可以有父方法的注释?
- java - 如何从 Java 中的 arraylist api 响应中检索 jsonObjects
- php - Laravel 问题没有在“包”命名空间中定义命令,在 $ php artisan config:clear 之后
- swift - 带有 UIBezierPath 的分区栏
- pytorch - PyTorch RuntimeError:CUDA 内存不足。尝试分配 14.12 GiB
- racket - 可以在 PLT-Redex 中实现 let* like 表达式吗?
- flutter - Flutter Listview.builder 仅在我从其他屏幕弹出时复制其数据来自 firebase 的项目,否则它工作正常