1.配置域名与反向代理
通过阿里或者腾讯云申请了一个域名,我们要把这域名指向我们设置的IP和端口。我们来到阿里云,找到域名,我们首先把域名指向到我们的公网服务器IP,不带端口。
然后,我们来登陆到我们的服务器界面,进入到宝塔。首先你要安装好nginx。然后我们创建一个网站,域名就是我们刚才申请的域名,类似下图:
我们创建完毕后,然后,设置这个网站,添加反向代理,可以参考下图:
注意,这个地方的8081端口是修改过docker-compose.yml文件,把里面的端口映射改过,所以我这个地方直接映射到8081端口了。然后点击提交,访问我们的域名。
2.开启https访问
有些部署在公网上可能要开启https的访问,也比较简单,这里先介绍一下从阿里申请的SSL证书后如何添加。如果你没有阿里申请的SSL证书,也可以申请宝塔的SSL证书或者腾讯云的。
我们给域名申请证书后,选择下载
我们的服务器是nginx,所以这里选择nginx格式下载。
下载解压后会有两个文件, xxx.key文件和,xxx.pem文件,
我们用记事本分别打开这两个文件,然后把里面的内容复制到我们刚才创建的网站的SSL部分
然后,点击保存。
同时,你需要改一下docker-compose.yml文件中的443端口,因为https要占用443端口,所以会报错,可以参考改成下面这样,
ports:
- "8081:80"
- "8443:443"
然后在那个文件夹下执行 docker-compose up -d
然后重启一下nginx服务,访问 https://oj.longkui.site
就能访问https的网站了
同时,我们也可以要求强制使用https访问;
或者不需要的时候,直接关闭SSL访问。