FROM gitea/gitea:1.14.5-rootless ENV GITEA_CUSTOM=/var/lib/gitea/custom # Create a temporary writable directory RUN mkdir -p /app/tmp # Copy the existing app.ini file to a temporary location COPY app.ini /tmp/app.ini # Extract the necessary parts from DATABASE_URL and modify the app.ini file in /tmp 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) \ && printf "[database]\nDB_TYPE = postgres\nHOST = $DATABASE_HOST\nNAME = $DATABASE_NAME\nUSER = $DATABASE_USER\nPASSWD = $DATABASE_PASSWORD\nSSL_MODE = require\n" > /tmp/app.ini # Move the modified app.ini to the Gitea configuration directory RUN mv /tmp/app.ini /var/lib/gitea/custom/conf/app.ini