使用azure/docker-login@v1部署时遇@actions/core模块缺失错误
解决GitHub Action中azure/docker-login@v1找不到@actions/core的问题
问题分析
报错Cannot find module '@actions/core'是因为azure/docker-login@v1版本过于陈旧,其依赖的@actions/core模块与当前GitHub Runner环境的Node.js版本不兼容,且该旧版本已停止维护,容易出现环境适配类问题。
解决方案
1. 升级azure/docker-login到最新稳定版本
将azure/docker-login@v1替换为azure/docker-login@v2(或更高稳定版本),新版本已适配最新的Runner环境和依赖包:
- name: 'Build and push image' uses: azure/docker-login@v2 with: login-server: ${{ secrets.REGISTRY_LOGIN_SERVER }} username: ${{ secrets.REGISTRY_USERNAME }} password: ${{ secrets.REGISTRY_PASSWORD }}
2. 固定actions/checkout的版本
当前使用的actions/checkout@main是开发分支,存在不确定性,建议替换为明确的稳定版本(如v4):
- name: 'Checkout GitHub Action' uses: actions/checkout@v4
3. 验证后续Docker命令逻辑
新版本的azure/docker-login不会影响后续docker build和docker push命令的执行,保持原有逻辑即可。
补充说明
旧版本GitHub Action易因依赖更新、环境变化出现兼容性问题,建议所有使用的Action都固定到明确的稳定版本,避免使用main或未指定版本的引用方式,减少突发故障。
内容的提问来源于stack exchange,提问作者Man Fan
相关产品推荐
相关产品推荐

