Pingvin Share is self-hosted file sharing platform and an alternative for WeTransfer.
- Share files using a link
- Unlimited file size (restricted only by disk space)
- Set an expiration date for shares
- Secure shares with visitor limits and passwords
- Email recipients
- Integration with ClamAV for security scans
Note: Pingvin Share is in its early stages and may contain bugs.
- Download the
docker-compose.yml
file - Run
docker-compose up -d
The website is now listening on http://localhost:3000
, have fun with Pingvin Share 🐧!
Required tools:
git clone https://github.com/stonith404/pingvin-share
cd pingvin-share
# Checkout the latest version
git fetch --tags && git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
# Start the backend
cd backend
npm install
npm run build
pm2 start --name="pingvin-share-backend" npm -- run prod
# Start the frontend
cd ../frontend
npm install
npm run build
pm2 start --name="pingvin-share-frontend" npm -- run start
The website is now listening on http://localhost:3000
, have fun with Pingvin Share 🐧!
ClamAV is used to scan shares for malicious files and remove them if found.
- Add the ClamAV container to the Docker Compose stack (see
docker-compose.yml
) and start the container. - Docker will wait for ClamAV to start before starting Pingvin Share. This may take a minute or two.
- The Pingvin Share logs should now log "ClamAV is active"
Please note that ClamAV needs a lot of ressources.
As Pingvin Share is in early stage, see the release notes for breaking changes before upgrading.
docker compose pull
docker compose up -d
- Stop the running app
pm2 stop pingvin-share-backend pingvin-share-frontend
- Repeat the steps from the installation guide except the
git clone
step.cd pingvin-share # Checkout the latest version git fetch --tags && git checkout $(git describe --tags `git rev-list --tags --max-count=1`) # Start the backend cd backend npm run build pm2 restart pingvin-share-backend # Start the frontend cd ../frontend npm run build pm2 restart pingvin-share-frontend
You can change the name and the logo of the app by visiting the admin configuration page.
You're very welcome to contribute to Pingvin Share! Follow the contribution guide to get started.