Sign inSign up

hbixu/psitransfer

By hbixu

Updated 6 months ago

Simple open source self-hosted file sharing solution, based on the original PsiTransfer project.

Image
Databases & storage
0

1.6K

hbixu/psitransfer repository overview

PsiTransfer

Simple open source self-hosted file sharing solution, based on the original PsiTransfer project.

Original project

What is different from the original project

This image is built from a fork with the following changes:

  • Configurable UI branding via PSITRANSFER_APP_NAME (default remains PsiTransfer).

Quick start

docker run -d \
  -p 3000:3000 \
  -e PSITRANSFER_APP_NAME="MyBrand" \
  -v $PWD/data:/data \
  hbixu/psitransfer:latest

Docker Compose example

services:
  psitransfer:
    image: hbixu/psitransfer:2.3.1
    ports:
      - "3000:3000"
    environment:
      NODE_ENV: production
      PSITRANSFER_APP_NAME: "MyBrand"
    volumes:
      - ./data:/data

Docker Compose environment variables

PsiTransfer accepts environment variables prefixed with PSITRANSFER_ that map to keys in config.js. All env vars override any config file value.

Core variables
  • NODE_ENV: Determines which config.<NODE_ENV>.js file is loaded (if present).
  • PSITRANSFER_APP_NAME: Display name shown in page headers and <title>. Default: PsiTransfer.
Full list (matches config.js)

Use the same key name as in config.js, uppercased and prefixed with PSITRANSFER_.

Env varTypeDescription
PSITRANSFER_UPLOAD_DIRstringUpload storage path; absolute path recommended in containers.
Default: ./data (resolved).
PSITRANSFER_BASE_URLstringPublic base path; must end with / (auto-fixed).
Default: /.
PSITRANSFER_UPLOAD_APP_PATHstringUpload app path under baseUrl; auto-normalized.
Default: /.
PSITRANSFER_IFACEstringBind interface for HTTP/HTTPS servers.
Default: 0.0.0.0.
PSITRANSFER_PORTnumberHTTP port; set false to disable HTTP.
Default: 3000.
PSITRANSFER_SSL_PORTnumberHTTPS port; active only with key/cert.
Default: 8443.
PSITRANSFER_SSL_KEY_FILEstringPath to SSL key file.
Default: false.
PSITRANSFER_SSL_CERT_FILEstringPath to SSL cert file.
Default: false.
PSITRANSFER_FORCE_HTTPSstringForce HTTPS; true or a full URL.
Default: empty.
PSITRANSFER_TRUST_PROXYstringExpress trust proxy setting (when behind reverse proxy).
Default: empty.
PSITRANSFER_RETENTIONSobject (JSON)JSON object of retention options (keys are seconds or "one-time", values are labels). Default options: "one-time", "3600", "21600", "86400", "259200", "604800", "1209600", "2419200", "4838400".
Default: see config.js.
PSITRANSFER_ADMIN_PASSstring/booleanEnables /admin when set; false disables.
Default: false.
PSITRANSFER_UPLOAD_PASSstring/booleanPassword required to upload when set.
Default: false.
PSITRANSFER_REQUIRE_BUCKET_PASSWORDbooleanMakes bucket password field mandatory.
Default: false.
PSITRANSFER_DEFAULT_RETENTIONstringDefault retention in seconds (string).
Default: 604800.
PSITRANSFER_MAX_AGEnumberMax file age before expiry (seconds).
Default: 75 days (seconds).
PSITRANSFER_MAX_PREVIEW_SIZEnumberMax file size for previews (bytes).
Default: 2MB (bytes).
PSITRANSFER_MAIL_TEMPLATEstringEmail share template.
Default: mailto:?subject=File Transfer&body=You can download the files here: %%URL%%.
PSITRANSFER_ACCESS_LOGstring/booleanAccess log format; false disables logging.
Default: format string.
PSITRANSFER_FILE_DOWNLOADED_WEBHOOKstring/nullWebhook URL invoked on file download.
Default: null.
PSITRANSFER_FILE_UPLOADED_WEBHOOKstring/nullWebhook URL invoked on file upload.
Default: null.
PSITRANSFER_DEFAULT_LANGUAGEstringFallback UI language code.
Default: en.
PSITRANSFER_MAX_FILE_SIZEnumber/nullMax upload file size (bytes).
Default: null.
PSITRANSFER_MAX_BUCKET_SIZEnumber/nullMax total size per bucket (bytes).
Default: null.
PSITRANSFER_PLUGINSarray (CSV)Comma-separated list of plugin names.
Default: file-downloaded-webhook,file-uploaded-webhook.
PSITRANSFER_DISABLE_QR_CODEbooleanDisables QR code button for download links.
Default: false.

License

PsiTransfer is BSD-2-Clause licensed. This image keeps the same license and references.
Redistribution is permitted if the copyright notices and license text are retained.

Tag summary

Content type

Image

Digest

sha256:79df205a9

Size

88.9 MB

Last updated

6 months ago

docker pull hbixu/psitransfer