部署到服务器或公共云
以下指南可以帮助部署到公共云提供商
- 使用 Serverless Application Model (SAM) 的 AWS Lambda
- 使用 Vapor 和 MongoDB Atlas 的 AWS Fargate
- AWS EC2
- DigitalOcean
- Heroku
- Kubernetes 和 Docker
- GCP
- 有其他常用公共云(如 Azure)的指南吗?在此处添加!
如果要部署到您自己的服务器(例如裸机、VM 或 Docker),则有几种打包 Swift 应用程序以进行部署的策略,请参阅打包指南以获取更多信息。
部署可调试配置(Linux 上的生产环境)
-
如果您有
--privileged
/--security-opt seccomp=unconfined
容器,或者在 VM 甚至裸机上运行,您可以运行您的二进制文件,使用lldb --batch -o "break set -n main --auto-continue 1 -C \"process handle SIGPIPE -s 0\"" -o run -k "image list" -k "register read" -k "bt all" -k "exit 134" ./my-program
而不是
./my-program
,以便在崩溃时获得类似于“崩溃报告”的内容。 -
如果您没有
--privileged
(或--security-opt seccomp=unconfined
)容器(意味着您将无法使用lldb
),或者您不想使用 lldb,请考虑使用swift-backtrace
这样的库来获取崩溃时的堆栈跟踪。