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

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

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

API申请

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

百度天气API彩虹屁API微信测试账号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 * * " />

Docker 安装

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

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 dockersudo 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 这里填自己的]