What is the difference between using {:system, "PORT"} and System.get_env("PORT") in deployment?

That is not a feature of config or elixir, some libraries were implementing that pattern to overcome limitations of not having runtime configuration back in the day.