Wine crashes when running in Lambda container

0

I have a container image that I have built following the guidelines in how to create custom Docker containers for Lambda. It's definitely hooked up correctly because I'm getting logs from the runs.

The situation is, I have a windows .exe binary file (provided by an unresponsive vendor) that I need to run, and Lambda sounded like a great tool for this. I installed Wine in the custom container, great. But every time the function fires, I look at that part in the CloudWatch logs and it's clear that Wine has crashed with a coredump in the /tmp directory.

I have tried

  • just having wine print its version and exit, same issue, it's just on running the program at all,
  • using different versions of Wine,
  • using different WINEPREFIX and WINEARCH environment variables,
  • building Wine from source myself as part of the Docker container build process, and
  • posting in the Wine forums for help.

Questions:

  • Is there any way to get out one of those core dumps?
  • Could this be because all directories other than /tmp are read-only to the container? How would I figure this out?
  • Is there any other way to run an .exe in Lambda?

Thanks in advance. I know this is a niche problem.

See this other question for a similar unsolved question. May be the same issue but it is from months ago and has no activity.

  • Have you found any solution to this yet? It would be helpful if you can post your findings. I am looking into a similar scenario where we need to run a windows software in a lambda function. Of course EC2 Windows image is an option, but this is a part of a step functions workflow and lambda seems to be the right fit for our use case.

profile picture
etdr
asked a year ago278 views
1 Answer
1

Not answering the question but perhaps some background that might help:

Lambda functions run in a very limited virtualsiation environment: https://aws.amazon.com/blogs/aws/firecracker-lightweight-virtualization-for-serverless-computing/ - it doesn't contain the full Linux kernel and is deliberately built to be small and have lower overheads - including the base operating system itself. It's highly probably that there are APIs that WINE is expecting to find that simply aren't there.

If you need access to the core dumps the best thing is to raise a support case and engage with the support team.

profile pictureAWS
EXPERT
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions