Docker登录成功后执行battery-historian命令提示未授权错误
解决Battery Historian Docker镜像拉取失败的问题
我来帮你解决这个Battery Historian镜像拉取的问题!你遇到的unauthorized和找不到镜像的错误,主要是因为gcr.io是Google的容器镜像仓库,国内网络环境下直接访问会有障碍,而且有时候就算网络通了,也可能因为没配置Google Cloud凭据导致权限问题。下面给你两个可行的解决方案:
方案一:用国内可访问的替代镜像直接启动
这是最快的解决方式,不用自己折腾构建:
- 先清理可能残留的相关容器(可选操作,避免冲突):
docker stop $(docker ps -q --filter "ancestor=gcr.io/android-battery-historian/stable:3.0") docker rm $(docker ps -aq --filter "ancestor=gcr.io/android-battery-historian/stable:3.0") - 选下面任意一条命令启动容器就行:
- 阿里云镜像源(国内速度快,推荐):
docker run -p 5555:9999 registry.cn-hangzhou.aliyuncs.com/google_containers/android-battery-historian:3.0 --port 9999 - Docker Hub公开镜像:
docker run -p 5555:9999 battery-historian/battery-historian:3.0 --port 9999
- 阿里云镜像源(国内速度快,推荐):
方案二:手动从源码构建镜像(最稳妥,无依赖问题)
如果替代镜像也出问题,直接从官方源码构建就不会有这些麻烦:
- 克隆Battery Historian的官方源码仓库(如果国内访问速度慢,可以用国内的GitHub镜像站点):
git clone [官方仓库地址或国内镜像地址] - 进入仓库目录并切换到3.0版本分支:
cd battery-historian git checkout tags/v3.0 - 开始构建本地镜像:
docker build -t battery-historian:3.0 . - 构建完成后启动容器:
docker run -p 5555:9999 battery-historian:3.0 --port 9999
验证成功
启动容器后,打开浏览器访问http://localhost:5555,能看到Battery Historian的上传页面就说明搞定啦!
内容的提问来源于stack exchange,提问作者Xianwei
相关产品推荐
相关产品推荐

