Päiväkirjan hakemistoDockup / kenttämuistio
Note / self-host-filebrowser

File Browserin itsehostaus vuonna 2026: volumet, käyttäjätilit ja turvallinen jakaminen

Käytännön opas File Browserin itsehostaukseen: Docker, portit, pysyvä data, TLS, tietoturva, varmuuskopiot ja tuotantokäytön estävät ongelmat.

Käsittele File Browseria pienenä järjestelmänä, älä Docker-imagena. File Browserin käyttäjälle tavoite on selkeä: liitetyn volumen verkkopohjainen tiedostonhallinta. Käyttöönotto on hyväksyttävä vasta, kun voit luoda rajoitetun käyttäjän, ladata ja nimetä tiedoston uudelleen, muokata tekstiä, luoda jaon ja varmistaa, ettei käyttäjä pääse määritetyn juurihakemistonsa ulkopuolelle.

Tämä ero paljastaa ongelman, johon ylläpitäjät törmäävät paikallisen testauksen jälkeen: liitetyt tiedostot käyttävät hostin oikeuksia, joita kontti ei pysty lukemaan. Samalla varmuuskopiointi- ja päivityssuunnitelmasta tulee riittävän täsmällinen testattavaksi.

Selvitä File Browserin jokainen säilytettävä tavu

Kontti-imagen voi ladata uudelleen, mutta tarjotut tiedostot sekä File Browserin tietokanta ja asetukset eivät palaudu itsestään. Liitä /srv ennen alustusta, kirjoita sinne vaarattomia testitietoja ja korvaa kontti varmistaaksesi, että polku on todella pysyvä. Tarkista toteutunut liitos sen sijaan, että luottaisit Compose-tiedoston nimeen, ja varmista, että ajonaikainen käyttäjä voi kirjoittaa sinne, minne File Browser sitä tarvitsee.

Valitse säilytysaika ja off-host-kohde ja harjoittele palautusta koskematta tuotantoon. Harjoitus onnistuu vasta, kun tarjotut tiedostot, käyttäjät, rajaukset, jaot ja asetukset palautuvat ja rajoitettu tili pysyy sille määritetyllä alueella. Tietokantapohjaisen tilan yhteydessä yhdistä tallennusvedokset sovelluksen kannalta yhtenäisiin exportteihin, kuten oppaassa point-in-time recovery versus snapshots kuvataan.

Käynnistä ensimmäinen tuotantoa vastaava instanssi

Pidä ensimmäinen File Browser -käynnistys riittävän toistettavana, jotta sen voi tarkistaa pull requestissa.

docker run -d \
  --name file-browser \
  --restart unless-stopped \
  -p 127.0.0.1:80:80 \
  -v file-browser-data:/srv \
  -v file-browser-db:/database \
  -v file-browser-config:/config \
  filebrowser/filebrowser:latest

Älä luota latest-tagiin sen jälkeen, kun oikeaa dataa on olemassa. Tallenna toimiva digest, kontin käyttäjä ja liitosten omistajuus. Seuraa sovelluslokia kokonaisen testin ajan — luo rajoitettu käyttäjä, lataa ja nimeä tiedosto uudelleen, muokkaa tekstiä, luo jako ja varmista, ettei käyttäjä pääse määritetyn juurihakemistonsa ulkopuolelle — ja kirjaa mahdolliset migraatiot ennen reitin ohjaamista tuotantoliikenteeseen.

Rajaa File Browserin ajonaikainen ympäristö

Prosessin terveys ja tuotteen toimivuus ovat File Browserissa eri asioita. Portti 80 voi vastata, vaikka käyttäjän näkökulmasta tapahtuma epäonnistuu. Paikallinen ajonaikainen vaatimus on erillinen pysyvä polku tietokannalle ja asetuksille. Vahvista tämä hyväksymistestillä; toimettomana tehtävä health check ei todista resurssin riittävyyttä.

Käytä tätä readiness-harjoitusta merkittävien asetusmuutosten jälkeen: luo rajoitettu käyttäjä, lataa ja nimeä tiedosto uudelleen, muokkaa tekstiä, luo jako ja varmista, ettei käyttäjä pääse määritetyn juurihakemistonsa ulkopuolelle. Pidä raskaat ulkoiset tarkistukset poissa liveness-probeista, jotta palveluntarjoajan häiriö ei aiheuta restart-loopia. Kapasiteettia suunniteltaessa seuraa taustalla olevan levyn läpisiirtonopeutta, upload-kokoa, samanaikaisia latauksia ja hakemistojen määrää, sillä ne kuvaavat File Browserin todellista kuormitusta paremmin kuin sivupyyntöjen määrä.

Tee julkisesta originista yksiselitteinen

Julkaise File Browserille yksi HTTPS-hostname ja pidä raaka portti 80 yksityisenä. Tarjoa käyttöliittymä HTTPS:n kautta, mutta rajaa tarjottu juurihakemisto huolellisesti. Näin selaimet ja API-asiakkaat eivät opi kahta keskenään kilpailevaa osoitetta.

Suorita tunnetusti toimiva tapahtuma puhtaalta clientilta ja selvitä ensimmäinen epäonnistuva pyyntö. Käytä custom-domain-opasta, jos DNS:ssä tai TLS:ssä on ongelmia. Käsittele ongelma “liitetyt tiedostot käyttävät hostin oikeuksia, joita kontti ei pysty lukemaan” erillisenä sovellusdiagnoosina sen jälkeen, kun reitin toimivuus on varmistettu.

File Browserin julkaisukriteeri

Luo pieni, helposti hävitettävä File Browser -testiympäristö ja säilytä se jokaista julkaisua varten. Testiympäristön tulee kattaa todellinen työnkulku: luo rajoitettu käyttäjä, lataa ja nimeä tiedosto uudelleen, muokkaa tekstiä, luo jako ja varmista, ettei käyttäjä pääse määritetyn juurihakemistonsa ulkopuolelle. Tallenna imagen digest, ulkoinen hostname, riippuvuuden osoite ja odotettu tulos, jotta seuraava ylläpitäjä voi toistaa testin ilman tämän oppaan tulkintaa.

Suorita testi kolme kertaa. Ensimmäisellä kerralla käytä tuoretta käyttöönottoa. Toisella kerralla korvaa kontti koskematta pysyvään tilaan. Kolmannella kerralla palauta varmuuskopio tyhjään ympäristöön. Kolmas suoritus onnistuu vasta, kun tarjotut tiedostot, käyttäjät, rajaukset, jaot ja asetukset palautuvat ja rajoitettu tili pysyy sille määritetyllä alueella. Kerää jokaisen suorituksen aikana latenssi- ja resurssitiedot suhteessa taustalla olevan levyn läpisiirtonopeuteen, upload-kokoon, samanaikaisiin latauksiin ja hakemistojen määrään. Näistä muodostuu hälytysten perusmittari mielivaltaisen CPU-prosentin sijaan.

Testaa lopuksi kielteinen polku tarkoituksella: lähetä vaaratonta syötettä lähellä tähän rajaan liittyvää resurssi- tai formaattirajoitusta: liitetyt tiedostot käyttävät hostin oikeuksia, joita kontti ei pysty lukemaan. Varmista, että File Browser epäonnistuu näkyvästi korruptoimatta tilaa, korjaa oikea edellytys ja toista onnistunut tapahtuma. Julkaisumerkintä, joka sisältää nämä neljä tulosta, on vahvempaa näyttöä kuin hallintapaneelin kuvakaappaukset tai kertaluonteinen curl-vastaus.

Kapasiteetti- ja päivitystarkistukset

Toimettomana tehtävä health check kertoo File Browserista vain vähän. Seuraa taustalla olevan levyn läpisiirtonopeutta, upload-kokoa, samanaikaisia latauksia ja hakemistojen määrää ja hälytä käyttäjän kokemasta oireesta: toiminto “luo rajoitettu käyttäjä, lataa ja nimeä tiedosto uudelleen, muokkaa tekstiä, luo jako ja varmista, ettei käyttäjä pääse määritetyn juurihakemistonsa ulkopuolelle” epäonnistuu. Pidä liveness paikallisena ja kevyenä; anna readinessin raportoida migraatioista tai alustuksesta ilman restart-myrskyä.

Riskialtis päivitysalue liittyy siihen, että File Browserin tietokanta- ja asetusmigraatiot ovat tärkeitä, vaikka tarjotut tiedostot sijaitsevat erillisellä liitoksella. Lue julkaisutiedotteet, ota tilasta snapshot, ota kohdeversio käyttöön palautetun kopion päällä ja toista hyväksymistesti. Jos liitetyt tiedostot käyttävät hostin oikeuksia, joita kontti ei pysty lukemaan, yhdistä client-pyyntö ensimmäiseen asiaankuuluvaan sovelluslokimerkintään sen sijaan, että poistaisit tilan tai lisäisit uudelleenohjauksia umpimähkään.

Rajoita File Browserin käyttöoikeuksia

Bootstrap-tunnukset ovat väliaikaisia, mutta luottamusmalli on pysyvä. File Browserissa kannattaa varoa juurihakemiston / tai secrets-hakemiston tarjoamista erillisen jaon sijaan. Tarjoa hostin juurihakemiston sijaan erillinen hakemisto ja anna kullekin tilille vain sen tarvitsemat, mahdollisimman suppeat tiedosto-oikeudet.

File Browser ei tässä perusratkaisussa edellytä pakollista bootstrap-salaisuutta. Suojaa sen varsinainen administrator-tili tai upstream-autentikointi sen sijaan. Aja image ilman tarpeettomia Linux capabilityja ja julkaise vain julkinen sovellusreitti. Pidä ylläpitäjän toiminta näkyvissä tallentamatta salaisia arvoja.

Käytä Dockupia alustakerroksessa

File Browserissa Dockup on hyödyllisimmillään imagen ja pysyvän palvelun välisellä rajalla. Se pitää porttiin 80 johtavan reitin, TLS:n, salaiset arvot ja tallennustilan liitettyinä kontin vaihdoissa riippumatta siitä, sijaitseeko compute Dockupissa vai omalla liitetyllä palvelimellasi.

Viimeistele käyttöönotto sovellustuntemuksella: tarjoa käyttöliittymä HTTPS:n kautta, mutta rajaa tarjottu juurihakemisto huolellisesti; varmista paikallinen vaatimus — erillinen pysyvä polku tietokannalle ja asetuksille — ja suorita tämä tarkistus: luo rajoitettu käyttäjä, lataa ja nimeä tiedosto uudelleen, muokkaa tekstiä, luo jako ja varmista, ettei käyttäjä pääse määritetyn juurihakemistonsa ulkopuolelle. Säilytä tulos deployment-tarkistuksena, jotta seuraava image-päivitys arvioidaan toiminnan eikä kontin tilan perusteella.

Usein kysytyt kysymykset

Mitä File Browser tarvitsee tuotantokäyttöön?

Ohjaa File Browser -kontti portista 80 yhden HTTPS-originin kautta. Paikallinen ajonaikainen vaatimus on erillinen pysyvä polku tietokannalle ja asetuksille. Älä pidä File Browseria valmiina, ennen kuin voit luoda rajoitetun käyttäjän, ladata ja nimetä tiedoston uudelleen, muokata tekstiä, luoda jaon ja varmistaa, ettei käyttäjä pääse määritetyn juurihakemistonsa ulkopuolelle.

Mitkä File Browserin tiedot kuuluvat varmuuskopioon?

Säilytä /srv ja sisällytä tarjotut tiedostot sekä File Browserin tietokanta ja asetukset samaan palautusmanifestiin. Puhdas File Browser -palautus onnistuu vasta, kun tarjotut tiedostot, käyttäjät, rajaukset, jaot ja asetukset palautuvat ja rajoitettu tili pysyy sille määritetyllä alueella.

Edellyttääkö File Browser HTTPS:ää reverse proxyn takana?

Käytä julkisessa File Browser -originissa HTTPS:ää ja pidä portti 80 sisäisessä reitissä. Määritä File Browserin asetus oikein: tarjoa käyttöliittymä HTTPS:n kautta, mutta rajaa tarjottu juurihakemisto huolellisesti. File Browserissa HTTPS suojaa tunnuksia ja käyttäjäsisältöä siirron aikana ja pitää originista riippuvan client-käyttäytymisen yhdenmukaisena.

Miten File Browserin päivitys pitäisi testata?

Palauta nykyinen File Browserin tila eristettyyn käyttöönottoon, ota ehdokasversio käyttöön ja toista sen hyväksymistapahtuma. Kiinnitä erityistä huomiota siihen, että File Browserin tietokanta- ja asetusmigraatiot ovat tärkeitä, vaikka tarjotut tiedostot sijaitsevat erillisellä liitoksella. Säilytä edellinen File Browser -image, kunnes sen datamigraation ja rollbackin rajat ovat selvillä.