No description
Find a file
paspo 38a75be17a
Some checks failed
Vulnerability Scan / Daily Vulnerability Scan (arm64, latest) (push) Successful in 4s
Vulnerability Scan / Daily Vulnerability Scan (arm64, latest-php74) (push) Successful in 4s
Vulnerability Scan / Daily Vulnerability Scan (amd64, latest-php74) (push) Successful in 14s
Vulnerability Scan / Daily Vulnerability Scan (amd64, latest) (push) Successful in 21s
Container Publish / on-success-skip (push) Has been skipped
Container Publish / build-image (arm64) (push) Successful in 29s
Container Publish / build-image (amd64) (push) Successful in 1m19s
Container Publish / update docker manifest (push) Successful in 7s
Vulnerability Scan / Daily Vulnerability Scan-3 (push) Failing after 3s
Vulnerability Scan / Daily Vulnerability Scan-2 (push) Successful in 11s
Vulnerability Scan / Daily Vulnerability Scan (push) Successful in 26s
Vulnerability Scan / Daily Vulnerability Scan-1 (push) Successful in 12s
build on every push
2025-10-02 22:50:52 +02:00
.gitea/workflows build on every push 2025-10-02 22:50:52 +02:00
rootfs start SSH only if enables 2025-08-04 11:43:13 +02:00
rootfs-php74 use real IPs instead of docker ones (PHP 7.4) 2025-07-31 17:29:31 +02:00
.gitignore sftp access 2024-12-13 11:34:16 +01:00
Dockerfile volume not needed anymore 2025-07-31 10:06:26 +02:00
Dockerfile-php74 forced alpine without apk cache 2025-04-02 12:58:14 +02:00
LICENSE added license 2024-12-13 12:07:55 +01:00
README.md hourly stats 2025-08-01 14:30:44 +02:00

webserver-nginx

Small webserver with PHP support and SFTP access

usage

Use this docker-compose.yaml

services:
  web:
    image: docker.asperti.com/paspo/webserver-nginx
    ports:
      - 8888:80 # web server
      - 8890:8080 # webdav access
      - 2222:22 # sftp access
    volumes:
      - ./data:/data
      - ./extra_nginx.conf:/etc/nginx/custom.d/extra.conf # optional
    environment:
      LOG_DAYS: 14              # default 7
      WEBDAV_PORT: 8080         # default: 8080
      PHP: php84                # none (default), php82, php83, php84
      POSTSIZE: 256M            # default: 256M
      PUID: 1000                # default: 1000
      PGID: 1000                # default: 1000
      USERNAME: theuser         # default: theuser
      GROUPNAME: thegroup       # default: thegroup
      TZ: Etc/UTC               # default: Etc/UTC
      FPM_MAX_CHILDREN: 5       # default: 5
      FPM_START_SERVERS: 1      # default: 1
      FPM_MIN_SPARE_SERVERS: 1  # default: 1
      FPM_MAX_SPARE_SERVERS: 3  # default: 3
      DISABLE_WEBROOT_CHOWN: 1  # default: 0
      DISABLE_SFTP: 1           # default: 0
      DISABLE_STATS: 1          # default: 0
      DISABLE_STATS_HOURLY: 1   # default: 0
      DISABLE_WEBDAV: 1         # default: 0

The /data/www and /data/logs directories and their contents will be chowned to $PUID:$PGID and chmodded to 0755 for directories and 0644 for files at container start.

data direcvtory layout

directory content
auth htpasswd files for stats and webdav
logs nginx access logs (logrotated) and error logs
ssh host keys and authorized keys
stats html statistical report
stats.db internal statistical db
www webroot