背景
我现在需要部署一个 OTP 应用程序。为了实现这一点,我正在使用酿酒厂。我的目标是将一个自给自足的文件传递给包含所有内容且不需要提取的 PROD 机器。
常规路线
大多数使用酿酒厂的人都会知道通常的路线:
- 跑
MIX_ENV=prod mix release
- 将压缩包复制
build/prod/rel/<name>/releases/<version>/<name>.tar.gz
到部署服务器 - 提取tarbal
- 运行代码。
客观的
我的目标是消除第 3 步。我不想提取任何东西,我只想复制发布并运行它,就像 sudo 可执行文件一样。
– 可执行文件
根据文档,也可以运行MIX_ENV=prod mix release --executable
或MIX_ENV=prod mix release --transient
. 这将创建一个不需要提取的伪可执行文件。
问题
但是,运行MIX_ENV=prod mix release --executable
命令后,我通常会搜索文件build/prod/rel/<name>/releases/<version>/<name>.run
. 从理论上讲,这应该是我需要复制到我的部署服务器中的文件,但我在任何地方都找不到它。
- 我需要将哪个文件复制到部署服务器中,它在哪里?