mirror of
https://github.com/casjaysdevdocker/lighttpd
synced 2026-10-06 02:13:12 -04:00
🗃️ Committing everything that changed 🗃️
This commit is contained in:
28 files changed
+381
-33
No files matched your search
+58
-31
@@ -1,44 +1,71 @@
|
||||
FROM casjaysdevdocker/php:latest as lighttpd
|
||||
FROM casjaysdevdocker/php:latest AS build
|
||||
|
||||
# Setup apache and php
|
||||
RUN apk -U upgrade && \
|
||||
apk --no-cache \
|
||||
add \
|
||||
ARG alpine_version="v3.16"
|
||||
|
||||
ARG TIMEZONE="America/New_York" \
|
||||
IMAGE_NAME="lighttpd" \
|
||||
LICENSE="MIT" \
|
||||
PORTS="80"
|
||||
|
||||
ENV TZ="$TIMEZONE" \
|
||||
SHELL="/bin/bash" \
|
||||
TERM="xterm-256color" \
|
||||
HOSTNAME="${HOSTNAME:-casjaysdev-$IMAGE_NAME}"
|
||||
|
||||
RUN set -ex; \
|
||||
rm -Rf "/etc/apk/repositories"; \
|
||||
echo "http://dl-cdn.alpinelinux.org/alpine/$alpine_version/main" >> "/etc/apk/repositories"; \
|
||||
echo "http://dl-cdn.alpinelinux.org/alpine/$alpine_version/community" >> "/etc/apk/repositories"; \
|
||||
if [ "$alpine_version" = "edge" ]; then echo "http://dl-cdn.alpinelinux.org/alpine/$alpine_version/testing" >> "/etc/apk/repositories" ; fi ; \
|
||||
apk update --update-cache && apk add \
|
||||
lighttpd \
|
||||
lighttpd-mod_auth \
|
||||
lighttpd-mod_webdav && \
|
||||
mkdir -p /htdocs /config
|
||||
lighttpd-mod_webdav
|
||||
|
||||
COPY ./bin/entrypoint-lighttpd.sh /usr/local/bin/entrypoint-lighttpd.sh
|
||||
COPY ./bin/. /usr/local/bin/
|
||||
COPY ./data/. /usr/local/share/template-files/data/
|
||||
COPY ./config/. /usr/local/share/template-files/config/
|
||||
|
||||
FROM lighttpd
|
||||
ARG BUILD_DATE="$(date +'%Y-%m-%d %H:%M')"
|
||||
|
||||
LABEL \
|
||||
org.label-schema.name="lighttpd" \
|
||||
org.label-schema.description="lighttpd webserver with php8" \
|
||||
org.label-schema.url="https://hub.docker.com/r/casjaysdevdocker/lighttpd" \
|
||||
org.label-schema.vcs-url="https://github.com/casjaysdevdocker/lighttpd" \
|
||||
org.label-schema.build-date=$BUILD_DATE \
|
||||
org.label-schema.version=$BUILD_DATE \
|
||||
org.label-schema.vcs-ref=$BUILD_DATE \
|
||||
org.label-schema.license="WTFPL" \
|
||||
org.label-schema.vcs-type="Git" \
|
||||
org.label-schema.schema-version="1.0" \
|
||||
org.label-schema.vendor="CasjaysDev" \
|
||||
maintainer="CasjaysDev <docker-admin@casjaysdev.com>"
|
||||
RUN rm -Rf /bin/.gitkeep /config /data /var/cache/apk/*
|
||||
|
||||
FROM scratch
|
||||
ARG BUILD_DATE="2022-10-10" \
|
||||
BUILD_VERSION="latest"
|
||||
|
||||
LABEL maintainer="CasjaysDev <docker-admin@casjaysdev.com>" \
|
||||
description="Alpine based image with lighttpd and php8."
|
||||
org.opencontainers.image.vcs-type="Git" \
|
||||
org.opencontainers.image.name="lighttpd" \
|
||||
org.opencontainers.image.base.name="lighttpd" \
|
||||
org.opencontainers.image.license="$LICENSE" \
|
||||
org.opencontainers.image.vcs-ref="$BUILD_VERSION" \
|
||||
org.opencontainers.image.build-date="$BUILD_DATE" \
|
||||
org.opencontainers.image.version="$BUILD_VERSION" \
|
||||
org.opencontainers.image.schema-version="$BUILD_VERSION" \
|
||||
org.opencontainers.image.url="https://hub.docker.com/r/casjaysdevdocker/lighttpd" \
|
||||
org.opencontainers.image.vcs-url="https://github.com/casjaysdevdocker/lighttpd" \
|
||||
org.opencontainers.image.url.source="https://github.com/casjaysdevdocker/lighttpd" \
|
||||
org.opencontainers.image.documentation="https://hub.docker.com/r/casjaysdevdocker/lighttpd" \
|
||||
org.opencontainers.image.vendor="CasjaysDev" \
|
||||
org.opencontainers.image.authors="CasjaysDev" \
|
||||
org.opencontainers.image.description="Containerized version of lighttpd"
|
||||
|
||||
ENV PHP_SERVER=lighttpd
|
||||
ENV SHELL="/bin/bash" \
|
||||
TERM="xterm-256color" \
|
||||
HOSTNAME="casjaysdev-lighttpd" \
|
||||
TZ="${TZ:-America/New_York}" \
|
||||
TIMEZONE="$$TIMEZONE" \
|
||||
PHP_SERVER="none" \
|
||||
PORT="80"
|
||||
|
||||
EXPOSE 80
|
||||
COPY --from=build /. /
|
||||
|
||||
WORKDIR /htdocs
|
||||
VOLUME [ "/htdocs", "/config" ]
|
||||
WORKDIR /root
|
||||
|
||||
HEALTHCHECK --interval=15s --timeout=3s CMD ["/usr/local/bin/entrypoint-lighttpd.sh", "healthcheck"]
|
||||
VOLUME [ "/config","/data" ]
|
||||
|
||||
EXPOSE $PORTS
|
||||
|
||||
ENTRYPOINT [ "tini", "-p", "SIGTERM", "--" ]
|
||||
CMD [ "/usr/local/bin/entrypoint-lighttpd.sh" ]
|
||||
HEALTHCHECK --start-period=1m --interval=2m --timeout=3s CMD [ "/usr/local/bin/entrypoint-lighttpd.sh", "healthcheck" ]
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/entrypoint-lighttpd.sh"]
|
||||
@@ -42,8 +42,8 @@ else
|
||||
cp -Rf "/etc/lighttpd/lighttpd.conf" "/config/lighttpd.conf"
|
||||
fi
|
||||
|
||||
if [ ! -f "/htdocs/www/index.html" ] || [ ! -f "/htdocs/www/index.php" ]; then
|
||||
[ -f "/htdocs/.docker_complete" ] || cp -Rf "/var/www/localhost/htdocs/." "/htdocs/www"
|
||||
if [ ! -d "/data/htdocs/www" ] || [ ! -f "/htdocs/.docker_complete" ]; then
|
||||
[ -f "/htdocs/.docker_complete" ] || cp -Rf "/usr/local/share/template-files/data/htdocs/www/." "/data/htdocs/www/"
|
||||
touch "/htdocs/.docker_complete"
|
||||
fi
|
||||
|
||||
|
||||
Whitespace-only changes.
@@ -0,0 +1,321 @@
|
||||
###############################################################################
|
||||
# Default lighttpd.conf for Gentoo.
|
||||
# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/files/conf/lighttpd.conf,v 1.3 2005/09/01 14:22:35 ka0ttic Exp $
|
||||
###############################################################################
|
||||
|
||||
# {{{ variables
|
||||
var.basedir = "/data/htdocs/www"
|
||||
var.logdir = "/dev/stdout"
|
||||
var.statedir = "/var/lib/lighttpd"
|
||||
# }}}
|
||||
|
||||
# {{{ modules
|
||||
# At the very least, mod_access and mod_accesslog should be enabled.
|
||||
# All other modules should only be loaded if necessary.
|
||||
# NOTE: the order of modules is important.
|
||||
server.modules = (
|
||||
# "mod_rewrite",
|
||||
# "mod_redirect",
|
||||
# "mod_alias",
|
||||
"mod_access",
|
||||
# "mod_cml",
|
||||
# "mod_trigger_b4_dl",
|
||||
# "mod_auth",
|
||||
# "mod_status",
|
||||
# "mod_setenv",
|
||||
# "mod_proxy",
|
||||
# "mod_simple_vhost",
|
||||
# "mod_evhost",
|
||||
# "mod_userdir",
|
||||
# "mod_deflate",
|
||||
# "mod_ssi",
|
||||
# "mod_usertrack",
|
||||
# "mod_expire",
|
||||
# "mod_secdownload",
|
||||
# "mod_rrdtool",
|
||||
# "mod_webdav",
|
||||
"mod_accesslog"
|
||||
)
|
||||
# }}}
|
||||
|
||||
# {{{ includes
|
||||
include "mime-types.conf"
|
||||
# uncomment for cgi support
|
||||
# include "mod_cgi.conf"
|
||||
# uncomment for php/fastcgi support
|
||||
# include "mod_fastcgi.conf"
|
||||
# uncomment for php/fastcgi fpm support
|
||||
# include "mod_fastcgi_fpm.conf"
|
||||
# }}}
|
||||
|
||||
# {{{ server settings
|
||||
server.username = "lighttpd"
|
||||
server.groupname = "lighttpd"
|
||||
|
||||
server.document-root = var.basedir + "/htdocs"
|
||||
server.pid-file = "/tmp/lighttpd.pid"
|
||||
|
||||
server.errorlog = var.logdir + "/error.log"
|
||||
# log errors to syslog instead
|
||||
# server.errorlog-use-syslog = "enable"
|
||||
|
||||
server.indexfiles = ("index.php", "index.html","index.htm", "default.htm")
|
||||
|
||||
# server.tag = "lighttpd"
|
||||
|
||||
server.follow-symlink = "enable"
|
||||
|
||||
# event handler (defaults to "poll")
|
||||
# see performance.txt
|
||||
#
|
||||
# for >= linux-2.4
|
||||
# server.event-handler = "linux-rtsig"
|
||||
# for >= linux-2.6
|
||||
# server.event-handler = "linux-sysepoll"
|
||||
# for FreeBSD
|
||||
# server.event-handler = "freebsd-kqueue"
|
||||
|
||||
# chroot to directory (defaults to no chroot)
|
||||
# server.chroot = "/"
|
||||
|
||||
# bind to port (defaults to 80)
|
||||
# server.port = 81
|
||||
|
||||
# bind to name (defaults to all interfaces)
|
||||
# server.bind = "grisu.home.kneschke.de"
|
||||
|
||||
# error-handler for status 404
|
||||
# server.error-handler-404 = "/error-handler.html"
|
||||
# server.error-handler-404 = "/error-handler.php"
|
||||
|
||||
# Format: <errorfile-prefix><status-code>.html
|
||||
# -> ..../status-404.html for 'File not found'
|
||||
# server.errorfile-prefix = var.basedir + "/error/status-"
|
||||
|
||||
# FAM support for caching stat() calls
|
||||
# requires that lighttpd be built with USE=fam
|
||||
# server.stat-cache-engine = "fam"
|
||||
# }}}
|
||||
|
||||
# {{{ mod_staticfile
|
||||
|
||||
# which extensions should not be handled via static-file transfer
|
||||
# (extensions that are usually handled by mod_cgi, mod_fastcgi, etc).
|
||||
static-file.exclude-extensions = (".php", ".pl", ".cgi", ".fcgi")
|
||||
# }}}
|
||||
|
||||
# {{{ mod_accesslog
|
||||
accesslog.filename = var.logdir + "/tmp/access.log"
|
||||
# }}}
|
||||
|
||||
# {{{ mod_dirlisting
|
||||
# enable directory listings
|
||||
# dir-listing.activate = "enable"
|
||||
#
|
||||
# don't list hidden files/directories
|
||||
# dir-listing.hide-dotfiles = "enable"
|
||||
#
|
||||
# use a different css for directory listings
|
||||
# dir-listing.external-css = "/path/to/dir-listing.css"
|
||||
#
|
||||
# list of regular expressions. files that match any of the
|
||||
# specified regular expressions will be excluded from directory
|
||||
# listings.
|
||||
# dir-listing.exclude = ("^\.", "~$")
|
||||
# }}}
|
||||
|
||||
# {{{ mod_access
|
||||
# see access.txt
|
||||
|
||||
url.access-deny = ("~", ".inc")
|
||||
# }}}
|
||||
|
||||
# {{{ mod_userdir
|
||||
# see userdir.txt
|
||||
#
|
||||
# userdir.path = "public_html"
|
||||
# userdir.exclude-user = ("root")
|
||||
# }}}
|
||||
|
||||
# {{{ mod_ssi
|
||||
# see ssi.txt
|
||||
#
|
||||
# ssi.extension = (".shtml")
|
||||
# }}}
|
||||
|
||||
# {{{ mod_ssl
|
||||
# see ssl.txt
|
||||
#
|
||||
# ssl.engine = "enable"
|
||||
# ssl.pemfile = "server.pem"
|
||||
# }}}
|
||||
|
||||
# {{{ mod_status
|
||||
# see status.txt
|
||||
#
|
||||
# status.status-url = "/server-status"
|
||||
# status.config-url = "/server-config"
|
||||
# }}}
|
||||
|
||||
# {{{ mod_simple_vhost
|
||||
# see simple-vhost.txt
|
||||
#
|
||||
# If you want name-based virtual hosting add the next three settings and load
|
||||
# mod_simple_vhost
|
||||
#
|
||||
# document-root =
|
||||
# virtual-server-root + virtual-server-default-host + virtual-server-docroot
|
||||
# or
|
||||
# virtual-server-root + http-host + virtual-server-docroot
|
||||
#
|
||||
# simple-vhost.server-root = "/home/weigon/wwwroot/servers/"
|
||||
# simple-vhost.default-host = "grisu.home.kneschke.de"
|
||||
# simple-vhost.document-root = "/pages/"
|
||||
# }}}
|
||||
|
||||
# {{{ mod_deflate
|
||||
# see compress.txt
|
||||
#
|
||||
# deflate.cache-dir = var.statedir + "/cache/compress"
|
||||
# deflate.mimetypes = ("text/plain", "text/html")
|
||||
# }}}
|
||||
|
||||
# {{{ mod_proxy
|
||||
# see proxy.txt
|
||||
#
|
||||
proxy.server = ( ".php" =>
|
||||
( "localhost" =>
|
||||
(
|
||||
"host" => "127.0.0.1",
|
||||
"port" => 9000
|
||||
)
|
||||
)
|
||||
)
|
||||
# }}}
|
||||
|
||||
# {{{ mod_auth
|
||||
# see authentication.txt
|
||||
#
|
||||
# auth.backend = "plain"
|
||||
# auth.backend.plain.userfile = "lighttpd.user"
|
||||
# auth.backend.plain.groupfile = "lighttpd.group"
|
||||
|
||||
# auth.backend.ldap.hostname = "localhost"
|
||||
# auth.backend.ldap.base-dn = "dc=my-domain,dc=com"
|
||||
# auth.backend.ldap.filter = "(uid=$)"
|
||||
|
||||
# auth.require = ( "/server-status" =>
|
||||
# (
|
||||
# "method" => "digest",
|
||||
# "realm" => "download archiv",
|
||||
# "require" => "user=jan"
|
||||
# ),
|
||||
# "/server-info" =>
|
||||
# (
|
||||
# "method" => "digest",
|
||||
# "realm" => "download archiv",
|
||||
# "require" => "valid-user"
|
||||
# )
|
||||
# )
|
||||
# }}}
|
||||
|
||||
# {{{ mod_rewrite
|
||||
# see rewrite.txt
|
||||
#
|
||||
# url.rewrite = (
|
||||
# "^/$" => "/server-status"
|
||||
# )
|
||||
# }}}
|
||||
|
||||
# {{{ mod_redirect
|
||||
# see redirect.txt
|
||||
#
|
||||
# url.redirect = (
|
||||
# "^/wishlist/(.+)" => "http://www.123.org/$1"
|
||||
# )
|
||||
# }}}
|
||||
|
||||
# {{{ mod_evhost
|
||||
# define a pattern for the host url finding
|
||||
# %% => % sign
|
||||
# %0 => domain name + tld
|
||||
# %1 => tld
|
||||
# %2 => domain name without tld
|
||||
# %3 => subdomain 1 name
|
||||
# %4 => subdomain 2 name
|
||||
#
|
||||
# evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/"
|
||||
# }}}
|
||||
|
||||
# {{{ mod_expire
|
||||
# expire.url = (
|
||||
# "/buggy/" => "access 2 hours",
|
||||
# "/asdhas/" => "access plus 1 seconds 2 minutes"
|
||||
# )
|
||||
# }}}
|
||||
|
||||
# {{{ mod_rrdtool
|
||||
# see rrdtool.txt
|
||||
#
|
||||
# rrdtool.binary = "/usr/bin/rrdtool"
|
||||
# rrdtool.db-name = var.statedir + "/lighttpd.rrd"
|
||||
# }}}
|
||||
|
||||
# {{{ mod_setenv
|
||||
# see setenv.txt
|
||||
#
|
||||
# setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" )
|
||||
# setenv.add-response-header = ( "X-Secret-Message" => "42" )
|
||||
# }}}
|
||||
|
||||
# {{{ mod_trigger_b4_dl
|
||||
# see trigger_b4_dl.txt
|
||||
#
|
||||
# trigger-before-download.gdbm-filename = "/home/weigon/testbase/trigger.db"
|
||||
# trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" )
|
||||
# trigger-before-download.trigger-url = "^/trigger/"
|
||||
# trigger-before-download.download-url = "^/download/"
|
||||
# trigger-before-download.deny-url = "http://127.0.0.1/index.html"
|
||||
# trigger-before-download.trigger-timeout = 10
|
||||
# }}}
|
||||
|
||||
# {{{ mod_cml
|
||||
# see cml.txt
|
||||
#
|
||||
# don't forget to add index.cml to server.indexfiles
|
||||
# cml.extension = ".cml"
|
||||
# cml.memcache-hosts = ( "127.0.0.1:11211" )
|
||||
# }}}
|
||||
|
||||
# {{{ mod_webdav
|
||||
# see webdav.txt
|
||||
#
|
||||
# $HTTP["url"] =~ "^/dav($|/)" {
|
||||
# webdav.activate = "enable"
|
||||
# webdav.is-readonly = "enable"
|
||||
# }
|
||||
# }}}
|
||||
|
||||
# {{{ extra rules
|
||||
#
|
||||
# set Content-Encoding and reset Content-Type for browsers that
|
||||
# support decompressing on-thy-fly (requires mod_setenv)
|
||||
# $HTTP["url"] =~ "\.gz$" {
|
||||
# setenv.add-response-header = ("Content-Encoding" => "x-gzip")
|
||||
# mimetype.assign = (".gz" => "text/plain")
|
||||
# }
|
||||
|
||||
# $HTTP["url"] =~ "\.bz2$" {
|
||||
# }
|
||||
#
|
||||
# }}}
|
||||
|
||||
# {{{ debug
|
||||
# debug.log-request-header = "enable"
|
||||
# debug.log-response-header = "enable"
|
||||
# debug.log-request-handling = "enable"
|
||||
# debug.log-file-not-found = "enable"
|
||||
# }}}
|
||||
|
||||
# vim: set ft=conf foldmethod=marker et :
|
||||
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Reference in new issue
Block a user