diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..6b8710a --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +.git diff --git a/Dockerfile b/Dockerfile index 8ee52cd..09672f8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,6 @@ WORKDIR /var/www/html/4get RUN apk update && apk upgrade RUN apk add php apache2-ssl php83-fileinfo php83-openssl php83-iconv php83-common php83-dom php83-sodium php83-curl curl php83-pecl-apcu php83-apache2 imagemagick php83-pecl-imagick php-mbstring imagemagick-webp imagemagick-jpeg -COPY ./docker/apache/ /etc/apache2/ COPY . . RUN chmod 777 /var/www/html/4get/icons @@ -14,4 +13,5 @@ EXPOSE 443 ENV FOURGET_PROTO=http -CMD ["./docker/docker-entrypoint.sh"] +ENTRYPOINT ["./docker/docker-entrypoint.sh"] +CMD ["start"] diff --git a/docker-compose.yaml b/docker-compose.yaml index 2bba4ca..3797294 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -6,14 +6,15 @@ services: image: luuul/4get:latest restart: unless-stopped environment: + - FOURGET_PROTO=http - FOURGET_SERVER_NAME=4get.ca + - FOURGET_INSTANCES=https://4get.ca ports: - "80:80" - "443:443" - volumes: - - /etc/letsencrypt/live/domain.tld:/etc/4get/certs - # mount custom banners and captcha - - ./banners:/var/www/html/4get/banner - - ./captcha:/var/www/html/4get/data/captcha + # volumes: + # - /etc/letsencrypt/live/domain.tld:/etc/4get/certs # mount ssl + # - ./banners:/var/www/html/4get/banner # mount custom banners + # - ./captcha:/var/www/html/4get/data/captcha # mount captcha images diff --git a/docker/apache/http/conf.d/ssl.conf b/docker/apache/http/conf.d/ssl.conf new file mode 100644 index 0000000..1357f56 --- /dev/null +++ b/docker/apache/http/conf.d/ssl.conf @@ -0,0 +1 @@ +# intentionally blank diff --git a/docker/apache/http.conf b/docker/apache/http/httpd.conf similarity index 100% rename from docker/apache/http.conf rename to docker/apache/http/httpd.conf diff --git a/docker/apache/conf.d/ssl.conf b/docker/apache/https/conf.d/ssl.conf similarity index 100% rename from docker/apache/conf.d/ssl.conf rename to docker/apache/https/conf.d/ssl.conf diff --git a/docker/apache/https.conf b/docker/apache/https/httpd.conf similarity index 100% rename from docker/apache/https.conf rename to docker/apache/https/httpd.conf diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh index 66d4067..53e7654 100755 --- a/docker/docker-entrypoint.sh +++ b/docker/docker-entrypoint.sh @@ -8,18 +8,27 @@ FOURGET_PROTO="${FOURGET_PROTO#\"}" # make lowercase FOURGET_PROTO=`echo $FOURGET_PROTO | awk '{print tolower($0)}'` +FOURGET_SRC='/var/www/html/4get' + +mkdir -p /etc/apache2 if [ "$FOURGET_PROTO" = "https" ]; then echo "Using https configuration" - cp /etc/apache2/https.conf /etc/apache2/httpd.conf + cp -r ${FOURGET_SRC}/docker/apache/https/httpd.conf /etc/apache2 + cp -r ${FOURGET_SRC}/docker/apache/https/conf.d/* /etc/apache2/conf.d + else echo "Using http configuration" - cp /etc/apache2/http.conf /etc/apache2/httpd.conf + cp -r ${FOURGET_SRC}/docker/apache/http/httpd.conf /etc/apache2 + cp -r ${FOURGET_SRC}/docker/apache/http/conf.d/* /etc/apache2/conf.d fi php ./docker/gen_config.php - -echo "4get is running" -exec httpd -DFOREGROUND +if [ "$@" = "start" ]; then + echo "4get is running" + exec httpd -DFOREGROUND +else + exec "$@" +fi