Сложновато будет с пакетами, два базовых images использовать можно, -смотри
https://stackoverflow.com/questions/33322103/multi...
https://docs.docker.com/develop/develop-images/mul...
но это чаще всего делается для того чтобы в первом образе откомпилить приложение, получить например длл, а потом его скопировать во второй образ, где оно собственно будет работать. Но... ты тут пишешь про Лямбда фунцию - образ aws Докер для .net 3.1 Лямбды - содержит .net 3.1 фреймворк и .net sdk (библиотеку) для работы с сервисами aws. Таким образом ты можешь откомпилить свой код в этом образе и сохранить его в zip file вместе с другими библиотеками, кот будет использоваться как исходный код для Лямба функции - можешь затем задеплоить этот зип коммандой
aws lambda update-function-code --function-name "$DST_LAMBDA_FUNCTION_NAME" --zip-file "
fileb://$TMP_FILE_PATH" --publish
И если ты хочешь запускать свою Лямбду через Dockerimage - то возьмы базовую AWS base image for .NET 3.1 и в докерфайле добавь и установи остальные пакеты с помощью 1) добавления all package references to the project file 2) dotnet restore, - ты не сможешь использовать ffmpeg, если он не есть один из dotnet packages - Лямбда - не Докер контейнер.