Dockerfile improvements.
Dockerfile improvements.

* Split the dockerfile into two stages to avoid leaving build dependencies behind.
* Create a non-root user and use it to launch the app.

usgo/agagd,usgo/agagd,usgo/agagd,usgo/agagd