No description
Find a file
paspo 38a75be17a
All checks were successful
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 (amd64) (push) Successful in 1m7s
Container Publish / build-image (arm64) (push) Successful in 29s
Container Publish / update docker manifest (push) Successful in 9s
Vulnerability Scan / Daily Vulnerability Scan-2 (push) Successful in 5s
Vulnerability Scan / Daily Vulnerability Scan-3 (push) Successful in 5s
Vulnerability Scan / Daily Vulnerability Scan-1 (push) Successful in 18s
Vulnerability Scan / Daily Vulnerability Scan (push) Successful in 40s
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