Open funnyJackPeng opened 2 months ago
在用户量不大,且不用太考虑安全的前提下,可以尝试将应用部署到本机 mac mini 上面去,这样就只需要支付购买证书和域名的费用了。 简单问了一下 AI ,提供了一个初步方案:
我有一台 mac mini,然后想要在上面部署一个 spring boot 的 docker 应用,此应用可以接受 HTTPS 的流量,如何实现?
在 Mac mini 上部署 Spring Boot Docker 应用并接受 HTTPS 流量,你可以按照以下步骤操作:
1. 准备 Spring Boot 应用
FROM openjdk:17-jdk-alpine WORKDIR /app COPY target/*.jar app.jar EXPOSE 8443 ENTRYPOINT ["java", "-jar", "app.jar"]
docker build -t spring-boot-app .
2. 配置反向代理
你可以使用 Nginx 或 Caddy 作为反向代理,将 HTTPS 流量转发到你的 Spring Boot 应用。
使用 Nginx:
brew install nginx
/usr/local/etc/nginx/servers/spring-boot-app.conf
server { listen 443 ssl; server_name your-domain.com; ssl_certificate /path/to/your/certificate.crt; ssl_certificate_key /path/to/your/private.key; location / { proxy_pass http://localhost:8443; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
your-domain.com
sudo nginx -t
sudo nginx
使用 Caddy:
brew install caddy
/usr/local/etc/caddy/Caddyfile
your-domain.com { reverse_proxy localhost:8443 }
caddy start
3. 运行 Docker 容器
docker run -p 8443:8443 --name spring-boot-app-container spring-boot-app
4. 配置域名和 SSL 证书
完成以上步骤后,你就可以通过 HTTPS 访问你的 Spring Boot 应用了。例如:https://your-domain.com。
https://your-domain.com
为了不影响公司的工作,此流程需要在购买 MacBook 后才进行尝试
这个主意很好,我们刚开始用户量肯定不是很大。这样就少了阿里云或华为云的支出了。 MacBook 的购买日程我们可以商量
在用户量不大,且不用太考虑安全的前提下,可以尝试将应用部署到本机 mac mini 上面去,这样就只需要支付购买证书和域名的费用了。 简单问了一下 AI ,提供了一个初步方案:
在 Mac mini 上部署 Spring Boot Docker 应用并接受 HTTPS 流量,你可以按照以下步骤操作:
1. 准备 Spring Boot 应用
2. 配置反向代理
你可以使用 Nginx 或 Caddy 作为反向代理,将 HTTPS 流量转发到你的 Spring Boot 应用。
使用 Nginx:
/usr/local/etc/nginx/servers/spring-boot-app.conf
):your-domain.com
替换为你的域名,并将证书和密钥文件的路径替换为实际路径。使用 Caddy:
/usr/local/etc/caddy/Caddyfile
):your-domain.com
替换为你的域名。3. 运行 Docker 容器
4. 配置域名和 SSL 证书
完成以上步骤后,你就可以通过 HTTPS 访问你的 Spring Boot 应用了。例如:
https://your-domain.com
。