Skip to content

Apache2 Webserver Docker Image for AARCH64, ARMv7l, X86 and X64

Notifications You must be signed in to change notification settings

tsitle/dockerimage-ws-apache_base

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Apache2 Webserver Docker Image for AARCH64, ARMv7l, X86 and X64

For hosting static HTML websites.

Inheritance and added packages

  • Debian Buster
    • Apache 2.4
    • graphicsmagick
    • cron
    • unzip
    • sudo
    • openssl
    • helper scripts (remdotfiles and css_js_minimize)

Webserver TCP Port

The webserver is listening only on TCP port 80 by default.

Docker Container usage

See the related GitHub repository https://github.com/tsitle/dockercontainer-ws-apache_base

Docker Container configuration

  • CF_PROJ_PRIMARY_FQDN [string]: FQDN for website (e.g. "mywebsite.localhost") (default: empty)
  • CF_SET_OWNER_AND_PERMS_WEBROOT [bool]: Recursively chown and chmod CF_WEBROOT? (default: false)
  • CF_WWWDATA_USER_ID [int]: User-ID for www-data (default: 33)
  • CF_WWWDATA_GROUP_ID [int]: Group-ID for www-data (default: 33)
  • CF_ENABLE_CRON [bool]: Enable cron service? (default: false)
  • CF_LANG [string]: Language to use (en_EN.UTF-8 or de_DE.UTF-8) (default: empty)
  • CF_TIMEZONE [string]: Timezone (e.g. 'Europe/Berlin') (default: empty)
  • CF_ENABLE_HTTP [bool]: Enable HTTP for Apache? (default: true)
  • CF_CREATE_DEFAULT_HTTP_SITE [bool]: Create default HTTP Virtual Host for Apache? (default: true)
  • CF_ENABLE_HTTPS [bool]: Enable HTTPS/SSL for Apache? (default: false)
  • CF_CREATE_DEFAULT_HTTPS_SITE [bool]: Create default HTTPS/SSL Virtual Host for Apache? (default: true)
  • CF_SSLCERT_GROUP_ID [int]: Group-ID for ssl-cert (default: 102)
  • CF_DEBUG_SSLGEN_SCRIPT [bool]: Enable debug out for sslgen.sh?
  • CF_CSR_SUBJECT_COUNTRY [string]: For auto-generated SSL Certificates (default: DE)
  • CF_CSR_SUBJECT_STATE [string]: For auto-generated SSL Certificates (default: SAX)
  • CF_CSR_SUBJECT_LOCATION [string]: For auto-generated SSL Certificates (default: LE)
  • CF_CSR_SUBJECT_ORGANIZ [string]: For auto-generated SSL Certificates (default: The IT Company)
  • CF_CSR_SUBJECT_ORGUNIT [string]: For auto-generated SSL Certificates (default: IT)
  • CF_APACHE_TIMEOUT [int]: Number of seconds before receives and sends time out (default: 300)

Using cron

You'll need to create the crontab file ./mpcron/root and then add some task to the file:

# the following command will be executed as 'root'
* *    *   *   *     cd /var/www/html/; tar cf backup.tar site-html/> /dev/null 2>&1

Now you could enable cron in your docker-compose.yaml file like this:

version: '3.5'
services:
  apache:
    image: "ws-apache-base-<ARCH>:<VERSION>"
    ports:
      - "80:80"
    volumes:
      - "$PWD/mpweb:/var/www/html"
      - "$PWD/mpcron/root:/var/spool/cron/crontabs/root"
    environment:
      - CF_PROJ_PRIMARY_FQDN=example-host.localhost
      - CF_SET_OWNER_AND_PERMS_WEBROOT=true
      - CF_ENABLE_CRON=true
      - CF_LANG=de_DE.UTF-8
      - CF_TIMEZONE=Europe/Berlin
      - CF_ENABLE_HTTPS=false
    restart: unless-stopped
    stdin_open: false
    tty: false

About

Apache2 Webserver Docker Image for AARCH64, ARMv7l, X86 and X64

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published