Que 因 Distillery 发布而失败 Docker
Que failing with Distillery release and Docker
我已经使用 Distillery 设置了一个 Docker 环境来生成我的应用程序版本。
我的应用程序像这样使用 Que 添加工作人员
case Que.add(SyncWorker, %{}) do
{:ok, _job} -> {:ok, "Syncing..."}
err -> {:error, "Error syncing: #{err}"}
end
但是当调用这一行时我得到:
** (exit) exited in: GenServer.call({:global, {Que.Server, SolarisCards.ShopifyIntegration.Workers.SyncWorker}}, {:add_job, SolarisCards.ShopifyIntegration.Workers.SyncWorker, %{}}, 5000)
** (EXIT) an exception was raised:
** (UndefinedFunctionError) function ExUtils.Module.name/1 is undefined (module ExUtils.Module is not available)
ExUtils.Module.name(SolarisCards.ShopifyIntegration.Workers.SyncWorker)
(que) lib/que/server.ex:81: Que.Server.handle_call/3
(stdlib) gen_server.erl:661: :gen_server.try_handle_call/4
(stdlib) gen_server.erl:690: :gen_server.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
(elixir) lib/gen_server.ex:989: GenServer.call/3
(solaris_cards) lib/solaris_cards/setup.ex:12: SolarisCards.Setup.do_setup_data/0
在没有 docker 和酿酒厂的情况下,它在本地工作正常,但不确定为什么它在上面失败了。
我也曾尝试 运行 文档中描述的预编译应用程序命令,但没有成功。
iex(my_app@127.0.0.1)1> Que.Persistence.Mnesia.setup!
将 {:ex_utils, "~> 0.1.7"}
添加到 mix.exs
依赖项就可以了。
我已经使用 Distillery 设置了一个 Docker 环境来生成我的应用程序版本。
我的应用程序像这样使用 Que 添加工作人员
case Que.add(SyncWorker, %{}) do
{:ok, _job} -> {:ok, "Syncing..."}
err -> {:error, "Error syncing: #{err}"}
end
但是当调用这一行时我得到:
** (exit) exited in: GenServer.call({:global, {Que.Server, SolarisCards.ShopifyIntegration.Workers.SyncWorker}}, {:add_job, SolarisCards.ShopifyIntegration.Workers.SyncWorker, %{}}, 5000)
** (EXIT) an exception was raised:
** (UndefinedFunctionError) function ExUtils.Module.name/1 is undefined (module ExUtils.Module is not available)
ExUtils.Module.name(SolarisCards.ShopifyIntegration.Workers.SyncWorker)
(que) lib/que/server.ex:81: Que.Server.handle_call/3
(stdlib) gen_server.erl:661: :gen_server.try_handle_call/4
(stdlib) gen_server.erl:690: :gen_server.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
(elixir) lib/gen_server.ex:989: GenServer.call/3
(solaris_cards) lib/solaris_cards/setup.ex:12: SolarisCards.Setup.do_setup_data/0
在没有 docker 和酿酒厂的情况下,它在本地工作正常,但不确定为什么它在上面失败了。
我也曾尝试 运行 文档中描述的预编译应用程序命令,但没有成功。
iex(my_app@127.0.0.1)1> Que.Persistence.Mnesia.setup!
将 {:ex_utils, "~> 0.1.7"}
添加到 mix.exs
依赖项就可以了。