暗恋一点都不痛苦
暗恋那点小事
暗恋一点都不痛苦,痛苦的是你,根本没看我 ——————等你下课
讲实话,最近暗恋那种心情真的达到的顶峰,你们知道吗?!!!
暗恋一点都不痛苦,痛苦的是你,根本没看我 ——————等你下课
讲实话,最近暗恋那种心情真的达到的顶峰,你们知道吗?!!!
我是一个特别喜欢翻看过去痕迹的人过去的聊天记录过去的朋友圈过去的照片亦或过去的人我从不贪图任何新鲜感 会怀念一个人甚至那件很普通的小事常想着从过去的某个时刻倒流所以每段关系结束时我总是很痛最初的你我快记不清了但那些开心的瞬间却忘不掉我还在经历一场雾霭沉沉又连绵不断的阴雨
我会好奇你的字迹是什么样 笑起来什么样子 今天穿的什么衣服 我喜欢在你身后看你的背影 喜欢与你擦肩而过的瞬间 即使你根本没有看我
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
chmod 700 containers
./discourse-setup
Hostname for your Discourse? [discourse.example.com]: #填写你的域名,discourse不允许 IP 访问
Email address for admin account(s)? [me@example.com,you@example.com]: #填写你的管理员邮箱
SMTP server address? [smtp.example.com]: #SMTP服务器地址
SMTP port? [587]: #SMTP端口
SMTP user name? [user@example.com]: # SMTP 账户
SMTP password? [pa$$word]: # SMTP 密码/密钥/应用专用密码
Let's Encrypt account email? (ENTER to skip) [me@example.com]: #申请证书的邮箱
Optional Maxmind License key () [xxxxxxxxxxxxxxxx]: # 默认可以回车自动设置
app.yml
文件,这个文件将会在安装进行后对你的 Discourse 实例进行配置。上面的输入数据将会为你的 Discourse 实例创建一个 app.yml
文件,这个文件将会在安装进行后对你的 Discourse 实例进行配置)暂时没空写
如果你选择了手动部署,请在 Discourse 的目录输入
./launcher rebuild app
app 指的是你的配置文件名
,默认
就是 app.yml
安装会拉取镜像,整个安装过程一般在8-10分钟左右
重建服务
./launcher rebuild app
清理缓存
./launcher cleanup
执行安装
./discourse-setup
开启永久删除
./launcher enter app
rails c
SiteSetting.can_permanently_delete = true
Discourse 部署默认占用80、443端口,如需部署在其他端口,需要修改配置文件
默认占用的端口,会导致我无法使用 Nginx 宝塔等等,浪费了服务器资源
下文将为大家教学如何将 Discourse 部署在非正常端口
首先你需要先拉取 Discourse 项目
本文不按照官方推荐的必须使用 80/443
端口的方式,也不使用官方容器内部的 Nginx 代理,而是在容器外使用反向代理实现 HTTPS 访问。经过实际测试,这种方式可以成功部署,且邮件服务和文件上传等功能均正常。
郑重提示: 尽量不要按照官方给的部署教程,否则可能会遇到很多问题。
在配置文件中需要特别注意以下几点:
在 templates
部分,一定不要引入以下三个文件:
"templates/web.socketed.template.yml"
"templates/web.ssl.template.yml"
"templates/web.letsencrypt.ssl.template.yml"
注意,是一定不要!!!
在 expose
部分,容器内部只需要暴露一个 80
端口即可。容器外部的端口可以根据需要定义(通过该端口进行反代即可实现 HTTPS,不需要额外暴露 443
端口)。
expose:
- "3333:80" # http
# - "443:443" # https
配置文件示例:
Hostname for your Discourse? [discourse.example.com]: # 填写你的域名,Discourse 不允许 IP 访问
Email address for admin account(s)? [me@example.com,you@example.com]: # 填写你的管理员邮箱
SMTP server address? [smtp.example.com]: # SMTP 服务器地址
SMTP port? [587]: # SMTP 端口
SMTP user name? [user@example.com]: # SMTP 账户
SMTP password? [pa$word]: # SMTP 密码/密钥/应用专用密码
Let's Encrypt account email? (ENTER to skip) [me@example.com]: # 申请证书的邮箱
Optional Maxmind License key () [xxxxxxxxxxxxxxxx]: # 默认可以回车自动设置
./launcher rebuild app
然后就可以开始部署了。如果需要 HTTPS
,可以自己安装一个 Nginx
,反代你设置的 HTTP 端口,然后申请 SSL 证书即可(建议开启强制 HTTPS
)。
launcher
的功能如下:
Usage: launcher COMMAND CONFIG [--skip-prereqs] [--docker-args STRING]
Commands:
start: Start/initialize a container
stop: Stop a running container
restart: Restart a container
destroy: Stop and remove a container
enter: Use nsenter to get a shell into a container
logs: View the Docker logs for a container
bootstrap: Bootstrap a container for the config based on a template
rebuild: Rebuild a container (destroy old, bootstrap, start new)
cleanup: Remove all containers that have stopped for > 24 hours
Options:
--skip-prereqs Don't check launcher prerequisites
--docker-args Extra arguments to pass when running docker
UNICORN_WORKERS
指的是启动工作的数量,一般建议设置为1-4 ,之前遇到的内存暴增就是这个原因,他默认是根据你的服务器性能设置的
db_shared_buffers
这个也是一样,不需要太大256MB-2048MB 都行
配置插件之后,如果 rebuild
失败,可以通过 ./discourse-doctor
命令来查看部署失败的原因(前提是配置文件为默认的 app 名字)
如果你一直重构失败,请先考虑看看插件是不是安装了非官方的导致不兼容
其次重构的时候留意一下是不是RAM都吃满了,加个 SWAP
也许能解决