So I'm trying to horseshoe an existing Cake 2.x application running on Ubuntu 14.04 into a docker container. I'm pretty sure there's better ways of doing it, but I'm basically just trying to replicate what I have inside a docker container.
The one big change though is environment variables. When the container launches, a config file gets pulled in and some environment variables set. These variables have to be used in various configuration files for the cake application. I set them in the /etc/apache2/sites-enabled/default.conf file with there "SetEnv" directive. I also "export" each variable and it all seems to be working fine. I use the "getenv()" method to get each of the variables into my config files.
The problem I seem to have is using environment variables in the database.php file. I've tried both pulling the variable directly from the environment with "getenv()" and setting it in my environment_settings.php file with "Configure::write()" and then using "Configure::read()" in the database.php file, but neither of these methods work.
Is there a reason why this is happening? And what can I do to fix this?
1 thought on “Cake 2.x Environment Variables and database.php file.”
Running Cake inside an Ubuntu container (though I’d recommend Alpine Linux if that’s possible to keep the image small) is not a big problem (I do it all the time).
What is the error that you get? are you sure that the environment variables are being slapped into the container properly?