网络知识 娱乐 小红书 程序员七夕礼物 - 微信每日早安推送 简单部署一键启动

小红书 程序员七夕礼物 - 微信每日早安推送 简单部署一键启动

本文来自 小红书大佬七夕节的礼物 原版大佬的代码,配置有些分散,我将其统一转移到了配置文件中,方便配置。打包部署遇到了些问题,这边修改了一下。也增加了docker启动,简化部署。

后面将介绍如何在不安装集成开发环境的情况下,只做一些网站注册,使用docker将程序运行起来。给心仪的人发送爱的消息。

​​​不需要安装Java、Maven、git等工具,我们也不用IDEA打开,IDEA爆红可以忽略,我们用文本文档编辑配置文件即可。
​​

API申请

我们需要申请一下开发API所需要的key。

百度天气APIhttps://lbsyun.baidu.com/apiconsole/center#/home
彩虹屁APIhttps://www.tianapi.com/apiview/181

以及最重要的微信测试账号https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

下载源码

大家将代码下载到本地。项目源码:wechat-push

这个文件路径 src/main/resources/application.properties找到配置文件,编辑修改,填入自己刚申请的key。这里大家可以用文本文档打开。

target.openId 填你们对象的微信id,访问http://localhost:9999/push即可推送至她的手机。定时推送也用的是这个。

target.test.openId 可以填自己的微信id,访问http://localhost:9999/push/test 这个地址,会给自己的微信推送,方便我们测试配置文件以及程序的正确性。

定时发送时间

如果想修改定时时间,可以访问这个定时任务文件路径 src/main/java/work/sajor/wechatpush/job/JobWorker.java

# 七点三十分触发,可以按照自己情况修改
@Scheduled(cron = "0 30 7 * * ?")

ps: 如果用idea打开可能会发现有代码爆红,这是因为mvn没有安装依赖,如果不在本地开发可以忽略,因为我们用docker启动。当然也可以点击idea上的这个按钮来解决依赖问题。

Docker 安装

这里我们使用docker来启动,方便快捷,还不易踩坑出错。我们可以到官网查看安装方法,我用centos做个介绍。其余大家可以照着文档来。

docker安装方法https://docs.docker.com/engine/install/

当然大家也可以访问这个第三方网站在自己电脑上安装docker环境。DaoCloud | Docker 极速下载http://get.daocloud.io 

文档第一步要求我们先卸载已有版本。我们贴进终端即可。

sudo yum remove docker 
                  docker-client 
                  docker-client-latest 
                  docker-common 
                  docker-latest 
                  docker-latest-logrotate 
                  docker-logrotate 
                  docker-engine

然后设置仓库镜像地址

 sudo yum install -y yum-utils
 sudo yum-config-manager 
    --add-repo 
    https://download.docker.com/linux/centos/docker-ce.repo

最后使用yum安装docker即可

sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

启用并测试一下

sudo systemctl start docker
sudo docker run hello-world

上传代码

教程已经到尾声了,如果大家是在服务器上安装的docker。还需要将下载的代码上传到服务器上。如果是在本地安装的docker,可以跳过这步,直接看启动。

可以通过scp/pscp上传代码。

scp 代码本地路径.zip  服务器用户名@服务器ip:上传到服务器路径

 也可以使用xshell、finalshell、Winscp等工具上传。

云服务还能通过云厂商的网页端登陆,上传文件。

上传zip之后,解压命令是

unzip wechat-push.zip

启动

我们需要打开终端,执行命令,终端可以这么打开:

windows里可以打开cmd,也可以用Powershell。在项目目录中,按住shift键,点击鼠标右键可以直接在当前路径中打开Powershell。

MacOS/Linux里用Terminal。MacOS可以在文件夹上点击右键,选择 New Terminal at Folder

 之后我们在终端wechat-push项目的目录下,然后运行以下命令。

# 构建镜像
docker build . -f Dockerfile --tag sajor:wechat-push

# 查看构建好的镜像
docker images

# 启动镜像
docker run --name wechat-push -d -p9999:9999 sajor:wechat-push

# 查看运行中容器
docker ps 

启动之后,访问本地 http://127.0.0.1:9999/push 就可以收到推送了。

为了方便排查错误,如果没有收到任何推送,可以使用查看日志的命令,窗口不要关,访问这个地址 http://127.0.0.1:9999/push 可以看到推送的日志。

docker logs -f -t [6c85ba71d50e 这里填自己的]