Release build is unable to read .env variables

I had a problem about deploying to FreeBSD earlier and was resolved.

This time, I have an executable built by issuing "cargo build --release".

If I execute it on the directory location at ..."target/release" by issuing "./hello_server" or "./hello_server &" it ran without any problem.

However, when I try to start it using FreeBSD's rc.d system using the script below:

#!/bin/sh

. /etc/rc.subr

name=rustapps
rcvar=rustapps_enable

start_cmd="${name}_start"
stop_cmd=":"

load_rc_config name : {rustapps_enable:=no}
: ${rustapps_msg="Nothing started."}

rustapps_start()
{
/usr/local/rustapps/hello_server/target/release/hello_server &
}

run_rc_command "$1"

It presented me with "DATABASE_URL must be set: NotPresent" panic. Clearly, it is not reading the .env variables.

How can I resolve this problem? I need the app to start using FreeBSD rc.d script. Thanks!

For me it seems as if the aren't yet set by the OS (however I have no experience with FreeBSD)

I did further research and discovered that the dotenv package is meant to be used for development and testing. So, therefore, what is the best practice to set configuration/environment variables for a Rust application?

.env is a user login source rather than for daemons.
Matching the OS is one approach. On *nix is typically a file in some etc directory.
Quick search gives;
https://www.freebsd.org/doc/en_US.ISO8859-1/articles/rc-scripting/article.html