Introduction:

Do you really trust handing your files over to third-party file platforms? Try Pingvin Share instead

  • Easy to Build - Easily set up your own file sharing platform using a private server
  • Complete Privacy - Your files belong only to you! No need to put them on third-party file platforms
  • Focused on Protection - Supports two-step verification, your files are solely yours
  • More Secure - More Secure - Fear of Trojan Horse when you send it to your friends? No problem, Pingvin Share supports mounting clamav to make your storage more secure.

Cons:

Storage space is linked to storage volume capacity, unable to mount external network drives, this project is more suitable for lightweight file sharing

Screenshots:

Deployment Method One: Install Using Docker

Step One: Update Sources

Ubuntu/Debian:

apt update -y && apt upgrade -y

Centos:

yum update -y && yum upgrade -y

Step Two: Install Docker

curl -fsSL https://get.docker.com -o get-docker.sh && sh ./get-docker.sh

Step Three: Install Docker Compose

sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Step Four: Create and Write to docker-compose.yml

version: '3.8'
services:
  pingvin-share:
    image: stonith404/pingvin-share
    restart: unless-stopped
    ports:
      - 3000:3000
    volumes:
      - "./data:/opt/app/backend/data"
      - "./data/images:/opt/app/frontend/public/img"

Please note that mounting clamav will consume a lot of system resources to monitor file security, use it only if you have optimal performance.
To mount clamav use the following docker-compose.yml

version: '3.8'
services:
  pingvin-share:
    image: stonith404/pingvin-share
    restart: unless-stopped
    ports:
      - 3000:3000
    volumes:
      - "./data:/opt/app/backend/data"
      - "./data/images:/opt/app/frontend/public/img"
    depends_on:
      clamav:
        condition: service_healthy

  clamav:
    restart: unless-stopped
    image: clamav/clamav
    ports:
      - 3310:3310
    healthcheck:
      test: ["CMD-SHELL", "clamscan -V || exit 1"]
      interval: 1m
      timeout: 10s
      retries: 3

Step Five: Install and Run Containers

docker-compose up -d

After deployment, you can visit http://<your-ip>:3000 to access Pingvin Share

Deployment Method Two: Install from Source Code

Step One: Update Sources

Ubuntu/Debian:

apt update -y && apt upgrade -y

Centos:

yum update -y && yum upgrade -y

Step Two: Install Node.js (Version 16 or higher)

curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs

Step Three: Install Git

sudo apt-get update
sudo apt-get install git

Step Four: Install pm2

npm install pm2 -g

Step Five: Clone Repository

git clone https://github.com/stonith404/pingvin-share
cd pingvin-share

Step Six: Switch to Latest Version

git fetch --tags
git checkout $(git describe --tags `git rev-list --tags --max-count=1`)

Step Seven: Start Backend

cd backend
npm install
npm run build
pm2 start --name="pingvin-share-backend" npm -- run prod

Step Eight: Start Frontend

cd ../frontend
npm install
npm run build
pm2 start --name="pingvin-share-frontend" npm -- run start

After deployment, you can visit http://<your-ip>:3000 to access Pingvin Share

Note:

The first registered user is the default administrator, you can configure other users' permissions in user management

Related Links:

Official Address: https://github.com/stonith404/pingvin-share
clamav Address: https://github.com/Cisco-Talos/clamav

Tag:Configure, File Sharing Platform, Pingvin Share

Original link:http://enblog.fuyiran.link/Technology/21.html

Copyright: All posts on this blog, unless otherwise stated, are published using theCC BY-NC-SA 4.0 license agreement. Please indicate the source for reprinting Fu Speaking (enblog.fuyiran.link)

Add a new comment.