docker.io 或者 ghcr.io?
总结
昨天想要部署一个时间管理工具,结果证明,是在浪费时间。但过程中还是学到一些东西。
- docker 公共镜像库的 pull 地址为 docker.io,默认可以省略,跟镜像 tag 省略默认为
:latest一样 - 除了公共镜像库,目前
GitHub Container Registry(GHCR),即 ghcr.io 是当前比较大的镜像库,属于 GitHub 官方的容器库。 - docker 公共镜像库因为网络原因容易拉取不到镜像(VPN可以解决),而 ghcr.io 匿名访问不稳定,需要先登录(下面有步骤说明)
- ghcr.io 无法像公共镜像库一样,支持直接搜索,而是需要先找到项目,在项目说明或者切换到仓库右侧 Packages 页面查看是否支持容器化
- chatgpt 比 deepseek 好用一些,但依然存在明显的能力边界。比如 ActivityWatch/activitywatch github 项目目前只支持本地化运行,类似的数据同步/上传功能需要额外配置(不想成为公司、管理人员监控员工的工具),官方没有提供 docker 部署支持。但 chatgpt 依然跟 deepseek 一样,将
ActivityWatch/activitywatch列为可以 docker 部署的时间管理工具。 - 阿里云容器镜像服务(ACR)属于属于私有化的镜像服务,也需要登录,需要自己上传相关的容器镜像。作为中转站,主要解决一些服务器无法拉取的镜像问题。
本地如何登录 ghcr.io
第一步:创建 Personal Access Token
进入:
推荐:
Fine-grained personal access tokens
或者经典 token 也行。
第二步:授权权限
实际没有找到读、写权限,直接跳过点击创建即可。
至少给:
read:packages
如果还要 push:
write:packages
第三步:docker login
执行:
docker login ghcr.io
然后输入:
Username
你的 GitHub 用户名:
your_github_name
Password
不是 GitHub 密码。
而是:
Personal Access Token
成功后效果
Docker 会保存到:
~/.docker/config.json
类似:
{
"auths": {
"ghcr.io": {
"auth": "xxxxx"
}
}
} 本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
海滨擎蟹
微信
支付宝