使用 Render 快速部署我们的Docker镜像加速服务.
---
[Docker Proxy-交流群](https://t.me/+ghs_XDp1vwxkMGU9)
---
## 📦 部署
> 以下步骤需要有Render账号,没有账号的可以先注册
**1. 登入 [Render](https://dashboard.render.com)**
**2. 创建我们的服务**
**3. 选择以docker容器的方式部署,输入下面任一镜像地址**
> **⚠️ 特别说明:当前作者Docker Hub仓库账号已被Render特殊对待了,建议大家把下面的镜像下载到自己本地,然后上传到自己的Docker hub仓库。下面的镜像地址也会随时被Render限制使用[具体操作可以看此教程](#-将镜像上传到自己的docker-hub仓库)**
| 镜像 | 平台 |
|-------|---------------|
| mirhub/mirror-hub:latest | docker hub
| mirhub/mirror-gcr:latest | Google Container Registry
| mirhub/mirror-ghcr:latest | GitHub Container Registry
| mirhub/mirror-k8sgcr:latest | Kubernetes Container Registry
| mirhub/mirror-k8sreg:latest | Kubernetes's container image registry
| mirhub/mirror-quay:latest | Quay Container Registry
| mirhub/mirror-elastic:latest | Microsoft Container Registry
| mirhub/mirror-mcr:latest | Elastic Stack
**4. 实例类型选择免费即可(免费实例需要保活,可使用 [uptime-kuma](https://uptime.kuma.pet/) 或 [D监控](https://www.dnspod.cn/Products/Monitor) 实现)**
**5. 环境变量不用添加,直接选择创建即可**
**6. 等待服务运行完成之后,使用分配的外网域名即可愉快的使用了**
## ✨ 使用
**1. 改Docker的daemon.json配置,配置你Render服务地址。修改后重启docker**
```shell
~]# vim /etc/docker/daemon.json
{
"registry-mirrors": [ "https://your_render_url" ],
"log-opts": {
"max-size": "100m",
"max-file": "5"
}
}
```
**2. 使用Render服务地址替换官方的 Registry 地址拉取镜像**
```shell
# docker hub Registry
## 源:redis:latest
## 替换
docker pull your_render_url/library/redis:latest
```
> **说明**:如果上面配置了docker的`daemon.json`,那么拉取镜像的时候就不需要在镜像前面加`Render_URL`了。【只针对拉取Docker Hub上的镜像有效】
**3. 拉取速度测试,效果还是可以的,主要是免费**

**4. 前缀替换的 Registry 的参考**
| 源站 | 替换为 | 平台 |
|-------|---------------|----------|
| docker.io | your_render_url | docker hub
| gcr.io | your_render_url | Google Container Registry
| ghcr.io | your_render_url | GitHub Container Registry
| k8s.gcr.io | your_render_url | Kubernetes Container Registry
| quay.io | your_render_url | Quay Container Registry
| mcr.microsoft.com | mcr.your_domain_name | Microsoft Container Registry
| docker.elastic.co | elastic.your_domain_name | Elastic Stack
---
## ✨ 将镜像上传到自己的Docker Hub仓库
#### 镜像下载地址
| 镜像 | 平台 |
|-------|---------------|
| dqzboy/mirror-hub:latest | docker hub
| dqzboy/mirror-gcr:latest | Google Container Registry
| dqzboy/mirror-ghcr:latest | GitHub Container Registry
| dqzboy/mirror-k8sgcr:latest | Kubernetes Container Registry
| dqzboy/mirror-k8sreg:latest | Kubernetes's container image registry
| dqzboy/mirror-quay:latest | Quay Container Registry
| dqzboy/mirror-mcr:latest | Microsoft Container
| dqzboy/mirror-elastic:latest | Elastic Stack
#### 步骤 1: 登录到 Docker Hub
- 打开终端输入以下命令并按提示输入你的 Docker Hub 用户名和密码:
```shell
docker login
```
#### 步骤 2: 拉取镜像
- 使用 docker pull 命令拉取上面的镜像,这里以 dqzboy/mirror-hub:latest 举例:
```shell
docker pull dqzboy/mirror-hub:latest
```
#### 步骤 3: 标记镜像
- 给拉下来的镜像打一个新标签,使其指向你的 Docker Hub 用户名。
- 假设你的 Docker Hub 用户名是 yourusername,你可以使用以下命令:
```shell
docker tag dqzboy/mirror-hub:latest yourusername/mirror-hub:latest
```
#### 步骤 4: 上传镜像
- 使用 docker push 命令上传标记的镜像到你的 Docker Hub 仓库:
```shell
docker push yourusername/mirror-hub:latest
```
#### 步骤 5: 验证上传
- 上传完成后,你可以登录到 Docker Hub 网站,查看你的仓库中是否已经存在刚刚上传的镜像。
---
## ⚠️ 注意
**1.** 免费实例如果15分钟内未收到入站流量,Render会关闭实例的网络服务。Render 会在下次收到处理请求时重新启动该服务。
**2.** Render每月为每个用户和团队提供 750 小时的免费实例时间:
- 免费网络服务在运行期间会消耗这些时间(停止服务不会消耗免费实例小时数)
- 如果您在某个月内用完了所有免费实例小时数,Render将暂停您的所有免费网络服务,直到下个月开始
- 每个月开始时,您的免费实例小时数将重置为 750 小时(剩余小时数不会结转)
**3.** 最好自己个人使用或者小团队使用,如果你的服务使用人多了,Render照样会把你的服务给删除掉,并且没有任何提醒或通知!