diff --git a/Dockerfile b/Dockerfile index 631f961..095cf66 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,21 +4,23 @@ ENV GITEA_CUSTOM=/var/lib/gitea/custom COPY app.ini /var/lib/gitea/custom/conf/app.ini +# Extract the necessary parts from DATABASE_URL and set them as environment variables RUN DATABASE_USER=$(echo $DATABASE_URL | cut -d ':' -f 2 | cut -d '/' -f 3) \ && DATABASE_PASSWORD=$(echo $DATABASE_URL | cut -d ':' -f 3 | cut -d '@' -f 1) \ && DATABASE_HOST=$(echo $DATABASE_URL | cut -d '@' -f 2 | cut -d ':' -f 1) \ && DATABASE_PORT=$(echo $DATABASE_URL | cut -d ':' -f 4 | cut -d '/' -f 1) \ && DATABASE_NAME=$(echo $DATABASE_URL | cut -d '/' -f 4) \ - && echo "GITEA__database__USER=$DATABASE_USER" >> /etc/environment \ - && echo "GITEA__database__PASSWD=$DATABASE_PASSWORD" >> /etc/environment \ - && echo "GITEA__database__HOST=$DATABASE_HOST" >> /etc/environment \ - && echo "GITEA__database__NAME=$DATABASE_NAME" >> /etc/environment \ - && echo "GITEA__database__DB_TYPE=postgres" >> /etc/environment \ - && echo "GITEA__database__SSL_MODE=require" >> /etc/environment + && export GITEA__database__USER=$DATABASE_USER \ + && export GITEA__database__PASSWD=$DATABASE_PASSWORD \ + && export GITEA__database__HOST=$DATABASE_HOST \ + && export GITEA__database__NAME=$DATABASE_NAME \ + && export GITEA__database__DB_TYPE=postgres \ + && export GITEA__database__SSL_MODE=require -ENV GITEA__database__USER=${DATABASE_USER} \ - GITEA__database__PASSWD=${DATABASE_PASSWORD} \ - GITEA__database__HOST=${DATABASE_HOST} \ - GITEA__database__NAME=${DATABASE_NAME} \ +# Set environment variables for the entire image +ENV GITEA__database__USER=$DATABASE_USER \ + GITEA__database__PASSWD=$DATABASE_PASSWORD \ + GITEA__database__HOST=$DATABASE_HOST \ + GITEA__database__NAME=$DATABASE_NAME \ GITEA__database__DB_TYPE=postgres \ GITEA__database__SSL_MODE=require