前言
今天分享一款极简朋友圈的开源项目——Moments,它省去了微信朋友圈里的烦人广告,省去了还需要选择屏蔽好友列表的麻烦,完全可以把这个极简朋友圈当作自己心情发泄的一个树洞。也可以发一些自己的日常生活,音乐分享等。
目前,它支持添加网易云音乐,b站视频,豆瓣读书/豆瓣电影,上传图片到S3兼容的云储存,支持本地存储,支持多种部署方案一键部署。总的来说,极简朋友圈是一种更加私密、简单的社交方式,它有助于保护用户隐私,减少信息过载与无效社交互动。
下面就来演示一下如何使用Docker本地部署极简朋友圈——Moments,并结合Cpolar内网穿透工具实现随时随地使用任何设备远程访问与发布内容。
1. 安装Docker
演示环境:CentOS7、Docker 、使用Xshell进行ssh远程
没有安装Docker的小伙伴需安装Docker,已有Docker可跳过以下步骤。
如没有安装Docker,需先安装Docker:
- 安装软件包(提供实用程序)并设置存储库
sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装Docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
启动Docker
sudo systemctl start docker
通过运行映像来验证 Docker 引擎安装是否成功
sudo docker run hello-world
2. 使用Docker安装部署Moments
检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
systemctl status docker
检查Docker版本
docker -v
创建安装目录
mkdir -p /root/moments
cd /root/moments
创建并编辑 docker-compose.yml文件
vim docker-compose.yml
填入下方的内容,并保存
version: '3'
services:
moments:
image: kingwrcy/moments:latest
ports:
- "3000:3000"
volumes:
- moments-data:/app/data
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
volumes:
moments-data:
启动Moments
docker compose up -d
启动防火墙
sudo systemctl start firewalld
查看防火墙状态
sudo systemctl status firewalld
设置防火墙开机自启
sudo systemctl enable firewalld
添加规则允许3000端口通过防火墙
sudo firewall-cmd --zone=public --add-port=3000/tcp --permanent
重新载入防火墙以应用更改
sudo firewall-cmd --reload
查看所有当前规则
sudo firewall-cmd --list-all
3. 本地测试Moments
打开一个新的浏览器,输入本地服务器IP:3000,或者loclhost:3000
可以看到进入到了Moments极简朋友圈的登录界面。
接下来登录一下,用户名密码默认:admin,a123456
登录进去后,进入到主界面
点击设置按钮,修改个人信息,修改密码、网站标题、头像、朋友圈背景等。
保存后就可以发朋友圈了:
添加B站视频,可以添加B站等视频代码
添加文章链接,可发布文章
发布图片日常
还可以分享网易云音乐,输入网易云音乐代码即可
这样我们就成功的使用Docker在本地部署了Moments极简朋友圈,随意自由的发布自己的动态,分享给朋友们,另外新奇的仿微信朋友圈的博客方式也非常吸引人。但是我们目前只能在本地局域网内访问,如果想出门在外用手机等其他设备来访问该怎么办呢?可以借助cpolar内网穿透工具来实现公网访问!接下来介绍一下如何安装cpolar内网穿透并实现Moments的公网访问!
4. 安装Cpolar内网穿透
下面是安装Cpolar步骤:
cpolar官网地址: https://www.cpolar.com
- 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 向系统添加服务
sudo systemctl enable cpolar
- 启动cpolar服务
sudo systemctl start cpolar
cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。
接下来配置一下Moments的公网地址,
登录后,点击左侧仪表盘的隧道管理——创建隧道,
创建一个Moments的公网http地址隧道
- 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
- 协议:选择http
- 本地地址:3000 (本地访问的地址)
- 域名类型:免费选择随机域名
- 地区:选择China Top
隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https
使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到Moments主界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可编辑自己的日常并发布公网了!
小结
如果大家需要经常外出或使用手机来发布这款朋友圈,或者是异地访问其他在本地局域网部署的服务,比如个人网站啊,私有云盘等等,由于刚才创建的是随机的地址,24小时会发生变化。另外它的网址是由随机字符生成,不容易记忆。
建议把公网地址设置成固定的二级子域名,这样就不用每次都重新创建隧道来访问,下面演示一下如何创建一个固定的http公网地址来解决这个问题。
5. 配置固定公网地址
我们接下来为 Moments 配置固定的HTTP公网地址,该地址不会变化,方便查看且无需每天重复修改访问地址。
配置固定http端口地址需要将cpolar升级到专业版套餐或以上。
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称:
保留成功后复制保留成功的二级子域名的名称
返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
点击更新
(注意,点击一次更新即可,不需要重复提交)
更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名
使用生成的公网地址访问,可以看到访问成功,这样一个Moments的固定且永久不变的二级子域名公网地址就设置好了,大家可以使用这个地址随时随地异地访问Moments发布日常,还可以分享给朋友们进行互动 =。=~
使用手机浏览器打开同样也可以发布内容!
以上就是如何使用Docker本地部署Moments极简朋友圈,并结合cpolar内网穿透工具实现远程访问使用的全部流程,感谢您的观看,有任何问题欢迎留言交流。