Discourse 中国区部署问题

我的情况:

  1. 几个月前我在中国大陆的Linux服务器部署了discourse,并且运行正常。我添加了- "templates/web.china.template.yml"
  2. 但是今天我尝试再次rebuild的时候,会提示Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

使用docker 拉镜像的时候,出现下面的错误:

net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

因为在下载官方镜像点的镜像国内访问速度太慢,所以报错,使用加速器就可以解决这个问题

首先打开配置文件daemon.json,centos上安装后有此文件,但是ubuntu上需要自己创建文件:

vim /etc/docker/daemon.json

在文件中加入:

    {
        "registry-mirrors":["https://repo-docker-public.isharkfly.com/"]
    }

原来上面这个配置文件的地址是清华大学的,现在这个地址已经不好用了。

我们自己用 Nexus 做了一个 Docker 的镜像。

然后重启守护进程:

sudo systemctl daemon-reload
sudo systemctl restart docker

等于是让你的 Docker 容器换个镜像地址下载。

也不知道具体那个镜像好用,所以顺便给 Google 搜索下。

参考下下面的链接看看:国内的 Docker Hub 镜像加速器,由国内教育机构与各大云服务商提供的镜像加速服务 | Dockerized 实践 https://github.com/y0ngb1n/dockerized · GitHub

1 Like

国内机器推荐直接挂全局代理,不然可能会遇到GitHub插件无法下载,容器拉取失败之类的。

1 Like

是呀,这个容器拉取的问题是一个大问题。

我还是觉得部署在 台湾省和香港省这2地方即可

部署在内地就算了。

要是想安装主题插件之类都不能安装,只能本地安装;

rebuild也需要重复好几次 :sweat_smile:

主要是有人在 Discourse 的官方问了这个问题。

所以想就拿着这里来讨论下,发现主要的问题还是在编译使用的包下载不下来。

我们自己也有一个 Nexus 的仓库管理,所以想着能不能给做个镜像。

但我可能感觉还比较困难,首先这个仓库管理也是部署在外面的,另外大数据传输可能会被中断。

但觉得也可以尝试下吧。

1 Like

太难了。

想拉个服务器测试下,结果这价格实在是太不好看了吧。

在外面随便拉个 VPS 都比这个便宜不是。

可以用阿里云的试用三个月啊

加油 :+1:

整个 1 个月的地点在成都的服务器试试看。

支持最新discourse docker镜像版本,支持中国网络使用,后期新镜像也是调整版本号

registry.cn-wulanchabu.aliyuncs.com/docker-hub-china/discourse-base:2.0.20250226-0128

目前比较稳定的方案

https://www.zeppos.tech/t/topic/12328?u=sober

搭建好的discourse docker的资源,中国内直接使用,拉满你的网络带宽,有其它版本需求,可以留言,目前升级最高的版本,最近有些忙,没有同步最新版本

registry.cn-wulanchabu.aliyuncs.com/docker-hub-china/discourse-base:2.0.20250129-0720

修改方法

中国区服务器部署方法,可以讨论,中国网络,解决了所有中国网络有限制的资源依赖库加速,拉满你的网络带宽,还有低成本服务器部署方案

image

使用web_only.yml data.yml,分离数据库和web网页,相对app.yml实现类似rebuild重构更新不停论坛服务方案