Это частный случай подгрузки переменных окружения. В коде ты все равно работаешь с переменными окружения. А кто их установил, dotenv или система или какой-нибудь супервизор контейнеров, тебе все равно
Если говорить про 12-тифакторные, то там ключевое именно то, что используются переменные окружения. Про этот файл там ни слова, а то, что у тебя в приложении оттуда грузятся переменные - это уже возможности твоего приложения.
Не для прода это не потому, что переменные окружения не для прода. С ними все отлично. Не хорошо по практикам безопасности секреты хранить в обычном текстовом файлике рядом с приложением.