一台云主机上的部署顺序
这次把短链接服务部署到一台 2 核 4G 的 Ubuntu 22.04 上。值得留下来的不是命令清单,是失败时该往前检查哪一步。
先确认 SSH 能登录。然后装运行时和入口,最后才是业务进程。JDK 17 用压缩包解到 /usr/local/java,不依赖发行版仓库里的版本。Nginx 用系统包安装,设成开机启动;改完站点配置执行 reload,不把进程杀掉再拉起。Docker 装完先跑 hello-world,确认守护进程可用,再用容器跑 MySQL 和 Redis,端口映射出来。口令和镜像地址不进仓库,也不进文章。
两个 Java 进程分开拉起。聚合服务堆 2G,网关堆 1G,都用 nohup 放到后台,标准输出和错误输出进各自的日志。进程命令返回了,不代表服务起来了。看日志里有没有启动完成,有没有立刻抛异常。
中间缺一步时,症状经常出现在下一步。数据库连不上,先看容器在不在,再看应用配置。Nginx 返回 502,先看上游进程的日志,而不是先改反向代理。业务进程的报错是最后一层。