forked from lolcat/4get
		
	modify docker entrypoint
This commit is contained in:
		@@ -4,8 +4,7 @@ WORKDIR /var/www/html/4get
 | 
			
		||||
RUN apk update && apk upgrade
 | 
			
		||||
RUN apk add php apache2-ssl php82-fileinfo php82-openssl php82-iconv php82-common php82-dom php82-curl curl php82-pecl-apcu php82-apache2 imagemagick php82-pecl-imagick php-mbstring imagemagick-webp imagemagick-jpeg
 | 
			
		||||
 | 
			
		||||
COPY ./apache/httpd.conf /etc/apache2/httpd.conf
 | 
			
		||||
COPY ./apache/conf.d/ssl.conf /etc/apache2/conf.d/ssl.conf
 | 
			
		||||
COPY ./docker/apache/ /etc/apache2/
 | 
			
		||||
COPY . .
 | 
			
		||||
 | 
			
		||||
RUN chmod 777 /var/www/html/4get/icons
 | 
			
		||||
 
 | 
			
		||||
@@ -152,19 +152,17 @@ Now test the nginx config with `nginx -t`, if it says that everything is good, r
 | 
			
		||||
## Install using Docker (lol u lazy fuck)
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
docker run -d -p 80:80 -e FOURGET_SERVER_NAME="4get.ca" -e FOURGET_SERVER_ADMIN_EMAIL="you@example.com" luuul/4get:latest
 | 
			
		||||
docker run -d -p 80:80 -e FOURGET_SERVER_NAME="4get.ca" luuul/4get:latest
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
...Or with SSL:
 | 
			
		||||
```
 | 
			
		||||
docker run -d -p 443:443 -e FOURGET_SERVER_NAME="4get.ca" -e FOURGET_SERVER_ADMIN_EMAIL="you@example.com" -v /etc/letsencrypt/live/domain.tld:/etc/4get/certs luuul/4get:latest
 | 
			
		||||
docker run -d -p 443:443 -v /etc/letsencrypt/live/domain.tld:/etc/4get/certs -e FOURGET_SERVER_NAME="4get.ca" luuul/4get:latest
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
replace enviroment variables FOURGET_SERVER_NAME and FOURGET_SERVER_ADMIN_EMAIL with relevant values
 | 
			
		||||
 | 
			
		||||
if the certificate files are not mounted to /etc/4get/certs the service listens to port 80
 | 
			
		||||
 | 
			
		||||
the certificate directory expects files named `cert.pem`, `chain.pem`, `privkey.pem`
 | 
			
		||||
the certificate directory expects files named `fullchain.pem` and `privkey.pem`
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Install using Docker Compose 
 | 
			
		||||
@@ -189,7 +187,6 @@ services:
 | 
			
		||||
    restart: always
 | 
			
		||||
    environment:
 | 
			
		||||
      - FOURGET_SERVER_NAME=4get.ca
 | 
			
		||||
      - FOURGET_SERVER_ADMIN_EMAIL="you@example.com"
 | 
			
		||||
 | 
			
		||||
    ports:
 | 
			
		||||
      - "80:80"
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,6 @@ services:
 | 
			
		||||
    environment:
 | 
			
		||||
      - FOURGET_VERSION=6
 | 
			
		||||
      - FOURGET_SERVER_NAME=4get.ca
 | 
			
		||||
      - FOURGET_SERVER_ADMIN_EMAIL=you@example.com
 | 
			
		||||
 | 
			
		||||
    ports:
 | 
			
		||||
      - "80:80"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										89
									
								
								docker/apache/http.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										89
									
								
								docker/apache/http.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,89 @@
 | 
			
		||||
Listen 80
 | 
			
		||||
ServerTokens OS
 | 
			
		||||
ServerRoot /var/www
 | 
			
		||||
ServerSignature On
 | 
			
		||||
ServerName localhost
 | 
			
		||||
 | 
			
		||||
DocumentRoot "/var/www/html/4get"
 | 
			
		||||
 | 
			
		||||
LogLevel warn
 | 
			
		||||
CustomLog /dev/null common
 | 
			
		||||
ErrorLog /dev/null
 | 
			
		||||
 | 
			
		||||
<Directory "/var/www/html/4get">
 | 
			
		||||
    RewriteEngine On
 | 
			
		||||
    RewriteCond %{THE_REQUEST} ^\w+\ /(.*)\.php(\?.*)?\ HTTP/
 | 
			
		||||
    RewriteRule ^ http://%{HTTP_HOST}/%1 [R=301]
 | 
			
		||||
    RewriteCond %{REQUEST_FILENAME}.php -f
 | 
			
		||||
    RewriteRule .* $0.php
 | 
			
		||||
    Options Indexes FollowSymLinks
 | 
			
		||||
    AllowOverride None
 | 
			
		||||
    Require all granted
 | 
			
		||||
</Directory>
 | 
			
		||||
 | 
			
		||||
LoadModule rewrite_module modules/mod_rewrite.so
 | 
			
		||||
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
 | 
			
		||||
LoadModule authn_file_module modules/mod_authn_file.so
 | 
			
		||||
LoadModule authn_core_module modules/mod_authn_core.so
 | 
			
		||||
LoadModule authz_host_module modules/mod_authz_host.so
 | 
			
		||||
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
 | 
			
		||||
LoadModule authz_user_module modules/mod_authz_user.so
 | 
			
		||||
LoadModule authz_core_module modules/mod_authz_core.so
 | 
			
		||||
LoadModule access_compat_module modules/mod_access_compat.so
 | 
			
		||||
LoadModule auth_basic_module modules/mod_auth_basic.so
 | 
			
		||||
LoadModule reqtimeout_module modules/mod_reqtimeout.so
 | 
			
		||||
LoadModule filter_module modules/mod_filter.so
 | 
			
		||||
LoadModule mime_module modules/mod_mime.so
 | 
			
		||||
LoadModule log_config_module modules/mod_log_config.so
 | 
			
		||||
LoadModule env_module modules/mod_env.so
 | 
			
		||||
LoadModule headers_module modules/mod_headers.so
 | 
			
		||||
LoadModule setenvif_module modules/mod_setenvif.so
 | 
			
		||||
LoadModule version_module modules/mod_version.so
 | 
			
		||||
LoadModule unixd_module modules/mod_unixd.so
 | 
			
		||||
LoadModule status_module modules/mod_status.so
 | 
			
		||||
LoadModule autoindex_module modules/mod_autoindex.so
 | 
			
		||||
LoadModule dir_module modules/mod_dir.so
 | 
			
		||||
LoadModule alias_module modules/mod_alias.so
 | 
			
		||||
LoadModule negotiation_module modules/mod_negotiation.so
 | 
			
		||||
 | 
			
		||||
<IfModule unixd_module>
 | 
			
		||||
User apache
 | 
			
		||||
Group apache
 | 
			
		||||
</IfModule>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<Directory />
 | 
			
		||||
    AllowOverride none
 | 
			
		||||
    Require all denied
 | 
			
		||||
</Directory>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<IfModule dir_module>
 | 
			
		||||
    DirectoryIndex index.html
 | 
			
		||||
</IfModule>
 | 
			
		||||
 | 
			
		||||
<Files ".ht*">
 | 
			
		||||
    Require all denied
 | 
			
		||||
</Files>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<IfModule headers_module>
 | 
			
		||||
    RequestHeader unset Proxy early
 | 
			
		||||
</IfModule>
 | 
			
		||||
 | 
			
		||||
<IfModule mime_module>
 | 
			
		||||
    TypesConfig /etc/apache2/mime.types
 | 
			
		||||
    AddType application/x-compress .Z
 | 
			
		||||
    AddType application/x-gzip .gz .tgz
 | 
			
		||||
</IfModule>
 | 
			
		||||
 | 
			
		||||
<IfModule mime_magic_module>
 | 
			
		||||
    MIMEMagicFile /etc/apache2/magic
 | 
			
		||||
</IfModule>
 | 
			
		||||
 | 
			
		||||
IncludeOptional /etc/apache2/conf.d/*.conf
 | 
			
		||||
 | 
			
		||||
@@ -1,8 +1,7 @@
 | 
			
		||||
ServerTokens OS
 | 
			
		||||
ServerRoot /var/www
 | 
			
		||||
ServerSignature On
 | 
			
		||||
ServerName 4get.ca
 | 
			
		||||
ServerAdmin you@example.com
 | 
			
		||||
ServerName localhost
 | 
			
		||||
 | 
			
		||||
DocumentRoot "/var/www/html/4get"
 | 
			
		||||
 | 
			
		||||
@@ -12,9 +11,8 @@ ErrorLog /dev/null
 | 
			
		||||
 | 
			
		||||
<VirtualHost *:443>
 | 
			
		||||
    SSLEngine on
 | 
			
		||||
    SSLCertificateFile /etc/4get/certs/cert.pem
 | 
			
		||||
    SSLCertificateFile /etc/4get/certs/fullchain.pem
 | 
			
		||||
    SSLCertificateKeyFile /etc/4get/certs/privkey.pem
 | 
			
		||||
    SSLCertificateChainFile /etc/4get/certs/chain.pem
 | 
			
		||||
</VirtualHost>
 | 
			
		||||
 | 
			
		||||
<Directory "/var/www/html/4get">
 | 
			
		||||
@@ -1,20 +1,13 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
set -e
 | 
			
		||||
sed -i "s/ServerName.*/ServerName ${FOURGET_SERVER_NAME}/g" /etc/apache2/httpd.conf
 | 
			
		||||
sed -i "s/ServerAdmin.*/ServerAdmin ${FOURGET_SERVER_ADMIN_EMAIL}/g" /etc/apache2/httpd.conf
 | 
			
		||||
 | 
			
		||||
if [ ! -f /etc/4get/certs/cert.pem ] || [ ! -f /etc/4get/certs/chain.pem ] || [ ! -f /etc/4get/certs/privkey.pem ]; then
 | 
			
		||||
        # remove SSL VirtualHost
 | 
			
		||||
        echo "No certificate files detected. Listening on port 80"
 | 
			
		||||
        sed -i '/<VirtualHost \*:443>/,/<\/VirtualHost>/d' /etc/apache2/httpd.conf
 | 
			
		||||
 | 
			
		||||
        # prepend Listen 80 to /apache2/httpd.conf
 | 
			
		||||
        echo "Listen 80" > /etc/apache2/httpd.conf_temp
 | 
			
		||||
        cat /etc/apache2/httpd.conf >> /etc/apache2/httpd.conf_temp
 | 
			
		||||
        mv /etc/apache2/httpd.conf_temp /etc/apache2/httpd.conf
 | 
			
		||||
if [ ! -f /etc/4get/certs/fullchain.pem ] || [ ! -f /etc/4get/certs/privkey.pem ]; then
 | 
			
		||||
        echo "Using http configuration"
 | 
			
		||||
        cp /etc/apache2/http.conf /etc/apache2/httpd.conf
 | 
			
		||||
else
 | 
			
		||||
        echo "Using https configuration"
 | 
			
		||||
        cp /etc/apache2/https.conf /etc/apache2/httpd.conf
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
php82 ./docker/gen_config.php
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user