In my home lab I have an Ubuntu virtual machine that runs both SQL Server 2017 and SQL Server 2019 in Docker containers.
After SQL Server 2019 Release Candidate 1 was released, when I performed my usual migration to get the latest version, I noticed that the command line for the SQL Server instance was different.
sudo docker ps -a --no-trunc to see the full command, which is emulated below (note: this output is heavily abbreviated).
CONTAINER ID IMAGE COMMAND
57e9c7ac2470 mcr.microsoft.com/mssql/server:2019-latest "/opt/mssql/bin/permissions_check.sh /opt/mssql/bin/sqlservr"
deea050363b4 mcr.microsoft.com/mssql/server:2017-latest "/opt/mssql/bin/sqlservr"
For reference, SQL Server 2017 on Docker ran as the root user (similar to Local Administrator on Windows Server). With SQL Server 2019, it no longer runs as root by default, but if you have performed an upgrade to 2019, your data files may have been created as the root user, so SQL Server has to run elevated to start correctly; this is performed by a script called permission_check.sh.
sudo docker logs SQL150 | head
Note how it says this container is running as root because the underlying master database file is owned by root.
SQL Server 2019 will run as non-root by default.
This container is running as user root.
Your master database file is owned by root.
To learn more visit https://go.microsoft.com/fwlink/?linkid=2099216.
This is an evaluation version. There are  days left in the evaluation period.
2019-09-02 21:34:25.59 Server Microsoft SQL Server 2019 (RC1) - 15.0.1900.25 (X64)
Aug 16 2019 14:20:53
Copyright (C) 2019 Microsoft Corporation
Developer Edition (64-bit) on Linux (Ubuntu 16.04.6 LTS)
2019-09-02 21:34:25.60 Server UTC adjustment: 0:00
That “learn more” link will redirect us to https://docs.microsoft.com/sql/linux/quickstart-install-connect-docker.
You can view the contents of the permission_check.sh file below, or share your thoughts in the comments.