diff --git a/404.html b/404.html index 767afd9..c05b41f 100644 --- a/404.html +++ b/404.html @@ -4,7 +4,7 @@ Pingvin Share - + diff --git a/assets/js/7cbc9cee.a9d144e1.js b/assets/js/7cbc9cee.4664cf81.js similarity index 73% rename from assets/js/7cbc9cee.a9d144e1.js rename to assets/js/7cbc9cee.4664cf81.js index 45ee4b2..8302746 100644 --- a/assets/js/7cbc9cee.a9d144e1.js +++ b/assets/js/7cbc9cee.4664cf81.js @@ -1 +1 @@ -"use strict";(self.webpackChunkpingvindocs=self.webpackChunkpingvindocs||[]).push([[862],{4388:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"docsSidebar":[{"type":"link","label":"Introduction","href":"/pingvin-share/introduction","docId":"introduction","unlisted":false},{"type":"category","label":"Getting Started","items":[{"type":"link","label":"Installation","href":"/pingvin-share/setup/installation","docId":"setup/installation","unlisted":false},{"type":"link","label":"Configuration","href":"/pingvin-share/setup/configuration","docId":"setup/configuration","unlisted":false},{"type":"link","label":"Integrations","href":"/pingvin-share/setup/integrations","docId":"setup/integrations","unlisted":false},{"type":"link","label":"OAuth 2 Login Guide","href":"/pingvin-share/setup/oauth2login","docId":"setup/oauth2login","unlisted":false},{"type":"link","label":"S3","href":"/pingvin-share/setup/s3","docId":"setup/s3","unlisted":false},{"type":"link","label":"Upgrading","href":"/pingvin-share/setup/upgrading","docId":"setup/upgrading","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Helping Out","items":[{"type":"link","label":"Translating","href":"/pingvin-share/help-out/translate","docId":"help-out/translate","unlisted":false},{"type":"link","label":"Contributing","href":"/pingvin-share/help-out/contribute","docId":"help-out/contribute","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"link","label":"Demo","href":"https://pingvin-share.dev.eliasschneider.com"},{"type":"link","label":"Discord","href":"https://discord.gg/HutpbfB59Q"}]},"docs":{"help-out/contribute":{"id":"help-out/contribute","title":"Contributing","description":"We would \u2764\ufe0f for you to contribute to Pingvin Share and help make it better! All contributions are welcome, including issues, suggestions, pull requests and more.","sidebar":"docsSidebar"},"help-out/translate":{"id":"help-out/translate","title":"Translating","description":"You can help to translate Pingvin Share into your language.","sidebar":"docsSidebar"},"introduction":{"id":"introduction","title":"Introduction","description":"Pingvin Share is self-hosted file sharing platform and an alternative for WeTransfer.","sidebar":"docsSidebar"},"setup/configuration":{"id":"setup/configuration","title":"Configuration","description":"You can customize Pingvin Share by going to the configuration page in your admin dashboard /admin/config.","sidebar":"docsSidebar"},"setup/installation":{"id":"setup/installation","title":"Installation","description":"Installation with Docker (recommended)","sidebar":"docsSidebar"},"setup/integrations":{"id":"setup/integrations","title":"Integrations","description":"ClamAV","sidebar":"docsSidebar"},"setup/oauth2login":{"id":"setup/oauth2login","title":"OAuth 2 Login Guide","description":"Config Built-in OAuth 2 Providers","sidebar":"docsSidebar"},"setup/s3":{"id":"setup/s3","title":"S3","description":"You are able to add your preferred S3 provider, like AWS, DigitalOcean, Exoscale or Infomaniak. However, if you don\'t","sidebar":"docsSidebar"},"setup/upgrading":{"id":"setup/upgrading","title":"Upgrading","description":"Upgrade to a new version","sidebar":"docsSidebar"}}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkpingvindocs=self.webpackChunkpingvindocs||[]).push([[862],{4388:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"docsSidebar":[{"type":"link","label":"Introduction","href":"/pingvin-share/introduction","docId":"introduction","unlisted":false},{"type":"category","label":"Getting Started","items":[{"type":"link","label":"Installation","href":"/pingvin-share/setup/installation","docId":"setup/installation","unlisted":false},{"type":"link","label":"Configuration","href":"/pingvin-share/setup/configuration","docId":"setup/configuration","unlisted":false},{"type":"link","label":"Integrations","href":"/pingvin-share/setup/integrations","docId":"setup/integrations","unlisted":false},{"type":"link","label":"OAuth 2 Login Guide","href":"/pingvin-share/setup/oauth2login","docId":"setup/oauth2login","unlisted":false},{"type":"link","label":"S3","href":"/pingvin-share/setup/s3","docId":"setup/s3","unlisted":false},{"type":"link","label":"Upgrading","href":"/pingvin-share/setup/upgrading","docId":"setup/upgrading","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Helping Out","items":[{"type":"link","label":"Translating","href":"/pingvin-share/help-out/translate","docId":"help-out/translate","unlisted":false},{"type":"link","label":"Contributing","href":"/pingvin-share/help-out/contribute","docId":"help-out/contribute","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"link","label":"Demo","href":"https://pingvin-share.dev.eliasschneider.com"},{"type":"link","label":"Discord","href":"https://discord.gg/HutpbfB59Q"}]},"docs":{"help-out/contribute":{"id":"help-out/contribute","title":"Contributing","description":"We would \u2764\ufe0f for you to contribute to Pingvin Share and help make it better! All contributions are welcome, including issues, suggestions, pull requests and more.","sidebar":"docsSidebar"},"help-out/translate":{"id":"help-out/translate","title":"Translating","description":"You can help to translate Pingvin Share into your language.","sidebar":"docsSidebar"},"introduction":{"id":"introduction","title":"Introduction","description":"Pingvin Share is self-hosted file sharing platform and an alternative for WeTransfer.","sidebar":"docsSidebar"},"setup/configuration":{"id":"setup/configuration","title":"Configuration","description":"General configuration","sidebar":"docsSidebar"},"setup/installation":{"id":"setup/installation","title":"Installation","description":"Installation with Docker (recommended)","sidebar":"docsSidebar"},"setup/integrations":{"id":"setup/integrations","title":"Integrations","description":"ClamAV","sidebar":"docsSidebar"},"setup/oauth2login":{"id":"setup/oauth2login","title":"OAuth 2 Login Guide","description":"Config Built-in OAuth 2 Providers","sidebar":"docsSidebar"},"setup/s3":{"id":"setup/s3","title":"S3","description":"You are able to add your preferred S3 provider, like AWS, DigitalOcean, Exoscale or Infomaniak. However, if you don\'t","sidebar":"docsSidebar"},"setup/upgrading":{"id":"setup/upgrading","title":"Upgrading","description":"Upgrade to a new version","sidebar":"docsSidebar"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/d131c913.34411341.js b/assets/js/d131c913.34411341.js deleted file mode 100644 index 36da2c8..0000000 --- a/assets/js/d131c913.34411341.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkpingvindocs=self.webpackChunkpingvindocs||[]).push([[126],{3833:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>h,contentTitle:()=>s,default:()=>l,frontMatter:()=>d,metadata:()=>o,toc:()=>c});var r=i(4848),t=i(8453);const d={id:"configuration"},s="Configuration",o={id:"setup/configuration",title:"Configuration",description:"You can customize Pingvin Share by going to the configuration page in your admin dashboard /admin/config.",source:"@site/docs/setup/configuration.md",sourceDirName:"setup",slug:"/setup/configuration",permalink:"/pingvin-share/setup/configuration",draft:!1,unlisted:!1,editUrl:"https://github.com/stonith404/pingvin-share/edit/main/docs/docs/setup/configuration.md",tags:[],version:"current",frontMatter:{id:"configuration"},sidebar:"docsSidebar",previous:{title:"Installation",permalink:"/pingvin-share/setup/installation"},next:{title:"Integrations",permalink:"/pingvin-share/setup/integrations"}},h={},c=[{value:"General",id:"general",level:2},{value:"App name",id:"app-name",level:3},{value:"App URL",id:"app-url",level:3},{value:"Show home page",id:"show-home-page",level:3},{value:"Logo",id:"logo",level:3},{value:"Environment variables",id:"environment-variables",level:3},{value:"Backend",id:"backend",level:4},{value:"Frontend",id:"frontend",level:4},{value:"Docker specific",id:"docker-specific",level:4}];function a(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,t.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.header,{children:(0,r.jsx)(n.h1,{id:"configuration",children:"Configuration"})}),"\n",(0,r.jsxs)(n.p,{children:["You can customize Pingvin Share by going to the configuration page in your admin dashboard ",(0,r.jsx)(n.code,{children:"/admin/config"}),"."]}),"\n",(0,r.jsx)(n.h2,{id:"general",children:"General"}),"\n",(0,r.jsxs)(n.p,{children:["The ",(0,r.jsx)(n.strong,{children:"General"})," Tab will let you customize your Pingvin Share instance to your liking."]}),"\n",(0,r.jsx)(n.h3,{id:"app-name",children:"App name"}),"\n",(0,r.jsxs)(n.p,{children:["To change the name of your instance, insert any text into ",(0,r.jsx)(n.code,{children:"App name"}),"."]}),"\n",(0,r.jsx)(n.h3,{id:"app-url",children:"App URL"}),"\n",(0,r.jsxs)(n.p,{children:["To make your App available trough your own ",(0,r.jsx)(n.strong,{children:"domain"}),", insert your specific domain and also subdomain if needed. Add an ",(0,r.jsx)(n.code,{children:"https://"})," if you have an SSL certificate installed. If this is not the case, use ",(0,r.jsx)(n.code,{children:"http://"}),"."]}),"\n",(0,r.jsx)(n.h3,{id:"show-home-page",children:"Show home page"}),"\n",(0,r.jsxs)(n.p,{children:["If you don't like the ",(0,r.jsx)(n.strong,{children:"home page"})," Pingvin Share provides and you just want the upload tab to be the main page, toggle this to ",(0,r.jsx)(n.code,{children:"true"}),"."]}),"\n",(0,r.jsx)(n.h3,{id:"logo",children:"Logo"}),"\n",(0,r.jsxs)(n.p,{children:["Not only you can change your instances name, but also the logo it shows everywhere. To do that, upload an image as ",(0,r.jsx)(n.code,{children:"png"})," with a 1:1 aspect ratio."]}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"environment-variables",children:"Environment variables"}),"\n",(0,r.jsx)(n.p,{children:"For installation specific configuration, you can use environment variables. The following variables are available:"}),"\n",(0,r.jsx)(n.h4,{id:"backend",children:"Backend"}),"\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{children:"Variable"}),(0,r.jsx)(n.th,{children:"Default Value"}),(0,r.jsx)(n.th,{children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"BACKEND_PORT"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"8080"})}),(0,r.jsx)(n.td,{children:"The port on which the backend listens."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"DATABASE_URL"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"file:../data/pingvin-share.db?connection_limit=1"})}),(0,r.jsx)(n.td,{children:"The URL of the SQLite database."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"DATA_DIRECTORY"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"./data"})}),(0,r.jsx)(n.td,{children:"The directory where data is stored."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"CLAMAV_HOST"})}),(0,r.jsxs)(n.td,{children:[(0,r.jsx)(n.code,{children:"127.0.0.1"})," or ",(0,r.jsx)(n.code,{children:"clamav"})," when running with Docker"]}),(0,r.jsxs)(n.td,{children:["The IP address of the ClamAV server. See the ",(0,r.jsx)(n.a,{href:"/pingvin-share/setup/integrations#clamav",children:"ClamAV docs"})," for more information."]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"CLAMAV_PORT"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"3310"})}),(0,r.jsx)(n.td,{children:"The port number of the ClamAV server."})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"frontend",children:"Frontend"}),"\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{children:"Variable"}),(0,r.jsx)(n.th,{children:"Default Value"}),(0,r.jsx)(n.th,{children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"PORT"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"3000"})}),(0,r.jsx)(n.td,{children:"The port on which the frontend listens."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"API_URL"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"http://localhost:8080"})}),(0,r.jsx)(n.td,{children:"The URL of the backend for the frontend."})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"docker-specific",children:"Docker specific"}),"\n",(0,r.jsx)(n.p,{children:"Environment variables that are only available when running Pingvin Share with Docker."}),"\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{children:"Variable"}),(0,r.jsx)(n.th,{children:"Default Value"}),(0,r.jsx)(n.th,{children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"TRUST_PROXY"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"false"})}),(0,r.jsxs)(n.td,{children:["Whether Pingvin Share is behind a reverse proxy. If set to ",(0,r.jsx)(n.code,{children:"true"}),", the ",(0,r.jsx)(n.code,{children:"X-Forwarded-For"})," header is trusted."]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsxs)(n.td,{children:[(0,r.jsx)(n.code,{children:"PUID"})," and ",(0,r.jsx)(n.code,{children:"PGID"})]}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"1000"})}),(0,r.jsxs)(n.td,{children:["The user and group ID of the user who should run Pingvin Share inside the Docker container and owns the files that are mounted with the volume. You can get the ",(0,r.jsx)(n.code,{children:"PUID"})," and ",(0,r.jsx)(n.code,{children:"GUID"})," of your user on your host machine by using the command ",(0,r.jsx)(n.code,{children:"id"}),". For more information see ",(0,r.jsx)(n.a,{href:"https://docs.linuxserver.io/general/understanding-puid-and-pgid/#using-the-variables",children:"this article"}),"."]})]})]})]})]})}function l(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>o});var r=i(6540);const t={},d=r.createContext(t);function s(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:s(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d131c913.edef1693.js b/assets/js/d131c913.edef1693.js new file mode 100644 index 0000000..273d6f2 --- /dev/null +++ b/assets/js/d131c913.edef1693.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkpingvindocs=self.webpackChunkpingvindocs||[]).push([[126],{3833:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>o,contentTitle:()=>s,default:()=>a,frontMatter:()=>d,metadata:()=>c,toc:()=>h});var r=i(4848),t=i(8453);const d={id:"configuration"},s="Configuration",c={id:"setup/configuration",title:"Configuration",description:"General configuration",source:"@site/docs/setup/configuration.md",sourceDirName:"setup",slug:"/setup/configuration",permalink:"/pingvin-share/setup/configuration",draft:!1,unlisted:!1,editUrl:"https://github.com/stonith404/pingvin-share/edit/main/docs/docs/setup/configuration.md",tags:[],version:"current",frontMatter:{id:"configuration"},sidebar:"docsSidebar",previous:{title:"Installation",permalink:"/pingvin-share/setup/installation"},next:{title:"Integrations",permalink:"/pingvin-share/setup/integrations"}},o={},h=[{value:"General configuration",id:"general-configuration",level:2},{value:"UI",id:"ui",level:3},{value:"YAML file",id:"yaml-file",level:3},{value:"Environment variables",id:"environment-variables",level:3},{value:"Backend",id:"backend",level:4},{value:"Frontend",id:"frontend",level:4},{value:"Docker specific",id:"docker-specific",level:4}];function l(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",hr:"hr",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,t.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.header,{children:(0,r.jsx)(n.h1,{id:"configuration",children:"Configuration"})}),"\n",(0,r.jsx)(n.h2,{id:"general-configuration",children:"General configuration"}),"\n",(0,r.jsx)(n.p,{children:"There are plenty of settings you can adjust to your needs. Pingvin Share can be configured in two ways:"}),"\n",(0,r.jsx)(n.h3,{id:"ui",children:"UI"}),"\n",(0,r.jsxs)(n.p,{children:["You can change the settings in the UI (",(0,r.jsx)(n.code,{children:"/admin/config"}),")"]}),"\n",(0,r.jsx)(n.h3,{id:"yaml-file",children:"YAML file"}),"\n",(0,r.jsx)(n.p,{children:"You can set the configuration via a YAML file. If you choose this way, you won't be able to change the settings in the UI."}),"\n",(0,r.jsxs)(n.p,{children:["If you use Docker you can create a ",(0,r.jsx)(n.code,{children:"config.yml"})," file based on the ",(0,r.jsx)(n.a,{href:"https://github.com/stonith404/pingvin-share/blob/main/config.yaml",children:(0,r.jsx)(n.code,{children:"config.example.yaml"})})," and mount it to ",(0,r.jsx)(n.code,{children:"/opt/app/config.yaml"})," in the container."]}),"\n",(0,r.jsxs)(n.p,{children:["If you run Pingvin Share without Docker, you can create a ",(0,r.jsx)(n.code,{children:"config.yml"})," file based on the ",(0,r.jsx)(n.a,{href:"https://github.com/stonith404/pingvin-share/blob/main/config.yaml",children:(0,r.jsx)(n.code,{children:"config.example.yaml"})})," in the root directory of the project."]}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"environment-variables",children:"Environment variables"}),"\n",(0,r.jsx)(n.p,{children:"For installation specific configuration, you can use environment variables. The following variables are available:"}),"\n",(0,r.jsx)(n.h4,{id:"backend",children:"Backend"}),"\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{children:"Variable"}),(0,r.jsx)(n.th,{children:"Default Value"}),(0,r.jsx)(n.th,{children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"BACKEND_PORT"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"8080"})}),(0,r.jsx)(n.td,{children:"The port on which the backend listens."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"DATABASE_URL"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"file:../data/pingvin-share.db?connection_limit=1"})}),(0,r.jsx)(n.td,{children:"The URL of the SQLite database."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"DATA_DIRECTORY"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"./data"})}),(0,r.jsx)(n.td,{children:"The directory where data is stored."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"CLAMAV_HOST"})}),(0,r.jsxs)(n.td,{children:[(0,r.jsx)(n.code,{children:"127.0.0.1"})," or ",(0,r.jsx)(n.code,{children:"clamav"})," when running with Docker"]}),(0,r.jsxs)(n.td,{children:["The IP address of the ClamAV server. See the ",(0,r.jsx)(n.a,{href:"/pingvin-share/setup/integrations#clamav",children:"ClamAV docs"})," for more information."]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"CLAMAV_PORT"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"3310"})}),(0,r.jsx)(n.td,{children:"The port number of the ClamAV server."})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"frontend",children:"Frontend"}),"\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{children:"Variable"}),(0,r.jsx)(n.th,{children:"Default Value"}),(0,r.jsx)(n.th,{children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"PORT"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"3000"})}),(0,r.jsx)(n.td,{children:"The port on which the frontend listens."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"API_URL"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"http://localhost:8080"})}),(0,r.jsx)(n.td,{children:"The URL of the backend for the frontend."})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"docker-specific",children:"Docker specific"}),"\n",(0,r.jsx)(n.p,{children:"Environment variables that are only available when running Pingvin Share with Docker."}),"\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{children:"Variable"}),(0,r.jsx)(n.th,{children:"Default Value"}),(0,r.jsx)(n.th,{children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"TRUST_PROXY"})}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"false"})}),(0,r.jsxs)(n.td,{children:["Whether Pingvin Share is behind a reverse proxy. If set to ",(0,r.jsx)(n.code,{children:"true"}),", the ",(0,r.jsx)(n.code,{children:"X-Forwarded-For"})," header is trusted."]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsxs)(n.td,{children:[(0,r.jsx)(n.code,{children:"PUID"})," and ",(0,r.jsx)(n.code,{children:"PGID"})]}),(0,r.jsx)(n.td,{children:(0,r.jsx)(n.code,{children:"1000"})}),(0,r.jsxs)(n.td,{children:["The user and group ID of the user who should run Pingvin Share inside the Docker container and owns the files that are mounted with the volume. You can get the ",(0,r.jsx)(n.code,{children:"PUID"})," and ",(0,r.jsx)(n.code,{children:"GUID"})," of your user on your host machine by using the command ",(0,r.jsx)(n.code,{children:"id"}),". For more information see ",(0,r.jsx)(n.a,{href:"https://docs.linuxserver.io/general/understanding-puid-and-pgid/#using-the-variables",children:"this article"}),"."]})]})]})]})]})}function a(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>c});var r=i(6540);const t={},d=r.createContext(t);function s(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:s(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/ec436908.008b0520.js b/assets/js/ec436908.008b0520.js new file mode 100644 index 0000000..7783e1a --- /dev/null +++ b/assets/js/ec436908.008b0520.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkpingvindocs=self.webpackChunkpingvindocs||[]).push([[695],{1897:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>c});var i=n(4848),s=n(8453);const r={id:"s3"},l="S3",o={id:"setup/s3",title:"S3",description:"You are able to add your preferred S3 provider, like AWS, DigitalOcean, Exoscale or Infomaniak. However, if you don't",source:"@site/docs/setup/s3.md",sourceDirName:"setup",slug:"/setup/s3",permalink:"/pingvin-share/setup/s3",draft:!1,unlisted:!1,editUrl:"https://github.com/stonith404/pingvin-share/edit/main/docs/docs/setup/s3.md",tags:[],version:"current",frontMatter:{id:"s3"},sidebar:"docsSidebar",previous:{title:"OAuth 2 Login Guide",permalink:"/pingvin-share/setup/oauth2login"},next:{title:"Upgrading",permalink:"/pingvin-share/setup/upgrading"}},d={},c=[{value:"Configuration",id:"configuration",level:2},{value:"ClamAV",id:"clamav",level:2},{value:"ZIP",id:"zip",level:2}];function a(e){const t={code:"code",h1:"h1",h2:"h2",header:"header",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.header,{children:(0,i.jsx)(t.h1,{id:"s3",children:"S3"})}),"\n",(0,i.jsxs)(t.p,{children:["You are able to add your preferred S3 provider, like AWS, DigitalOcean, Exoscale or Infomaniak. However, if you don't\nwant to store your files on a S3 bucket, you don't have to. Consider that this feature is ",(0,i.jsx)(t.code,{children:"DISABLED"})," per default."]}),"\n",(0,i.jsx)(t.h2,{id:"configuration",children:"Configuration"}),"\n",(0,i.jsxs)(t.p,{children:["You can configure your S3 provider and bucket by going to the configuration page in your admin dashboard ",(0,i.jsx)(t.code,{children:"/admin/config/s3"}),"."]}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{style:{textAlign:"left"},children:"Key"}),(0,i.jsx)(t.th,{style:{textAlign:"left"},children:"Description"}),(0,i.jsx)(t.th,{style:{textAlign:"left"},children:"Value"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"enabled"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property enables the storage location on your configured S3 bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"true"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"endpoint"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"The host for your S3 bucket. Endpoint formats vary by provider and some may include the bucket name in the FQDN. Ensure this is configured correctly, as an incorrect value may break some features."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"sos-ch-dk-2.exo.io"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"region"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property is the region where the bucket is located."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"sos-ch-dk-2"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"bucketName"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property is the name of your S3 bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"my-bucket"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"bucketPath"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property defines the folder where you want to store your files which are uploaded. Hint: Don't put a slash in the start or end."}),(0,i.jsxs)(t.td,{style:{textAlign:"left"},children:[(0,i.jsx)(t.code,{children:"my/custom/path"})," (or leave it empty for root)"]})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"key"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This is the access key you need to access to your bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"key-asdf"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"secret"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This is the secret you need to access to your bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"secret-asdf"})})]})]})]}),"\n",(0,i.jsx)(t.p,{children:"Don't forget to save the configuration. :)"}),"\n",(0,i.jsx)(t.h2,{id:"clamav",children:"ClamAV"}),"\n",(0,i.jsx)(t.p,{children:"Consider that ClamAV scans are not available at the moment if you store your files in a S3 bucket."}),"\n",(0,i.jsx)(t.h2,{id:"zip",children:"ZIP"}),"\n",(0,i.jsx)(t.p,{children:"Creating ZIP archives is not currently supported if you store your files in an S3 bucket."})]})}function h(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>l,x:()=>o});var i=n(6540);const s={},r=i.createContext(s);function l(e){const t=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/ec436908.03ec5a77.js b/assets/js/ec436908.03ec5a77.js deleted file mode 100644 index 3de89c6..0000000 --- a/assets/js/ec436908.03ec5a77.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkpingvindocs=self.webpackChunkpingvindocs||[]).push([[695],{1897:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>l,default:()=>a,frontMatter:()=>r,metadata:()=>o,toc:()=>c});var i=n(4848),s=n(8453);const r={id:"s3"},l="S3",o={id:"setup/s3",title:"S3",description:"You are able to add your preferred S3 provider, like AWS, DigitalOcean, Exoscale or Infomaniak. However, if you don't",source:"@site/docs/setup/s3.md",sourceDirName:"setup",slug:"/setup/s3",permalink:"/pingvin-share/setup/s3",draft:!1,unlisted:!1,editUrl:"https://github.com/stonith404/pingvin-share/edit/main/docs/docs/setup/s3.md",tags:[],version:"current",frontMatter:{id:"s3"},sidebar:"docsSidebar",previous:{title:"OAuth 2 Login Guide",permalink:"/pingvin-share/setup/oauth2login"},next:{title:"Upgrading",permalink:"/pingvin-share/setup/upgrading"}},d={},c=[{value:"Configuration",id:"configuration",level:2},{value:"ClamAV",id:"clamav",level:2},{value:"ZIP",id:"zip",level:2}];function h(e){const t={code:"code",h1:"h1",h2:"h2",header:"header",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.header,{children:(0,i.jsx)(t.h1,{id:"s3",children:"S3"})}),"\n",(0,i.jsxs)(t.p,{children:["You are able to add your preferred S3 provider, like AWS, DigitalOcean, Exoscale or Infomaniak. However, if you don't\nwant to store your files on a S3 bucket, you don't have to. Consider that this feature is ",(0,i.jsx)(t.code,{children:"DISABLED"})," per default."]}),"\n",(0,i.jsx)(t.h2,{id:"configuration",children:"Configuration"}),"\n",(0,i.jsxs)(t.p,{children:["You can configure your S3 provider and bucket by going to the configuration page in your admin dashboard ",(0,i.jsx)(t.code,{children:"/admin/config/s3"}),"."]}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{style:{textAlign:"left"},children:"Key"}),(0,i.jsx)(t.th,{style:{textAlign:"left"},children:"Description"}),(0,i.jsx)(t.th,{style:{textAlign:"left"},children:"Value"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"enabled"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property enables the storage location on your configured S3 bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"true"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"endpoint"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property is the host from your S3 bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"sos-ch-dk-2"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"region"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property is the region where the bucket is located."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"sos-ch-dk-2.exo.io"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"bucketName"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property is the name of your S3 bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"my-bucket"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"bucketPath"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This property defines the folder where you want to store your files which are uploaded. Hint: Don't put a slash in the start or end."}),(0,i.jsxs)(t.td,{style:{textAlign:"left"},children:[(0,i.jsx)(t.code,{children:"my/custom/path"})," (or leave it empty for root)"]})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"key"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This is the access key you need to access to your bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"key-asdf"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"secret"}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:"This is the secret you need to access to your bucket."}),(0,i.jsx)(t.td,{style:{textAlign:"left"},children:(0,i.jsx)(t.code,{children:"secret-asdf"})})]})]})]}),"\n",(0,i.jsx)(t.p,{children:"Don't forget to save the configuration. :)"}),"\n",(0,i.jsx)(t.h2,{id:"clamav",children:"ClamAV"}),"\n",(0,i.jsx)(t.p,{children:"Consider that ClamAV scans are not available at the moment if you store your files in a S3 bucket."}),"\n",(0,i.jsx)(t.h2,{id:"zip",children:"ZIP"}),"\n",(0,i.jsx)(t.p,{children:"Creating ZIP archives is not currently supported if you store your files in an S3 bucket."})]})}function a(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>l,x:()=>o});var i=n(6540);const s={},r=i.createContext(s);function l(e){const t=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.b727e5bd.js b/assets/js/runtime~main.3530f7f6.js similarity index 56% rename from assets/js/runtime~main.b727e5bd.js rename to assets/js/runtime~main.3530f7f6.js index c8a322e..849f732 100644 --- a/assets/js/runtime~main.b727e5bd.js +++ b/assets/js/runtime~main.3530f7f6.js @@ -1 +1 @@ -(()=>{"use strict";var e,t,r,a,o,n={},c={};function i(e){var t=c[e];if(void 0!==t)return t.exports;var r=c[e]={id:e,loaded:!1,exports:{}};return n[e].call(r.exports,r,r.exports,i),r.loaded=!0,r.exports}i.m=n,i.c=c,e=[],i.O=(t,r,a,o)=>{if(!r){var n=1/0;for(u=0;u=o)&&Object.keys(i.O).every((e=>i.O[e](r[d])))?r.splice(d--,1):(c=!1,o0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[r,a,o]},i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);i.r(o);var n={};t=t||[null,r({}),r([]),r(r)];for(var c=2&a&&e;"object"==typeof c&&!~t.indexOf(c);c=r(c))Object.getOwnPropertyNames(c).forEach((t=>n[t]=()=>e[t]));return n.default=()=>e,i.d(o,n),o},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"assets/js/"+({48:"a94703ab",98:"a7bd4aaa",99:"a8c31fc1",126:"d131c913",235:"a7456010",361:"3205bd6d",401:"17896441",537:"a0d20388",583:"1df93b7f",647:"5e95c892",695:"ec436908",723:"91b3cb8d",742:"aba21aa0",819:"3f2e6990",862:"7cbc9cee",863:"63b14240",899:"a09c2993"}[e]||e)+"."+{48:"78fc18a9",98:"3d51fbb4",99:"c26fc8a4",126:"34411341",235:"91f0b3e9",237:"f947e7e3",361:"3f885d6f",401:"402e11f1",537:"9147194f",583:"2d1029fa",647:"59168106",695:"03ec5a77",723:"073a48e1",742:"ad2b3c84",819:"6d5c25a8",862:"a9d144e1",863:"e94c1db4",899:"e0cc7812"}[e]+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="pingvindocs:",i.l=(e,t,r,n)=>{if(a[e])a[e].push(t);else{var c,d;if(void 0!==r)for(var f=document.getElementsByTagName("script"),u=0;u{c.onerror=c.onload=null,clearTimeout(b);var o=a[e];if(delete a[e],c.parentNode&&c.parentNode.removeChild(c),o&&o.forEach((e=>e(r))),t)return t(r)},b=setTimeout(s.bind(null,void 0,{type:"timeout",target:c}),12e4);c.onerror=s.bind(null,c.onerror),c.onload=s.bind(null,c.onload),d&&document.head.appendChild(c)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="/pingvin-share/",i.gca=function(e){return e={17896441:"401",a94703ab:"48",a7bd4aaa:"98",a8c31fc1:"99",d131c913:"126",a7456010:"235","3205bd6d":"361",a0d20388:"537","1df93b7f":"583","5e95c892":"647",ec436908:"695","91b3cb8d":"723",aba21aa0:"742","3f2e6990":"819","7cbc9cee":"862","63b14240":"863",a09c2993:"899"}[e]||e,i.p+i.u(e)},(()=>{var e={354:0,869:0};i.f.j=(t,r)=>{var a=i.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(354|869)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var n=i.p+i.u(t),c=new Error;i.l(n,(r=>{if(i.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;c.message="Loading chunk "+t+" failed.\n("+o+": "+n+")",c.name="ChunkLoadError",c.type=o,c.request=n,a[1](c)}}),"chunk-"+t,t)}},i.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,n=r[0],c=r[1],d=r[2],f=0;if(n.some((t=>0!==e[t]))){for(a in c)i.o(c,a)&&(i.m[a]=c[a]);if(d)var u=d(i)}for(t&&t(r);f{"use strict";var e,t,r,a,o,n={},d={};function i(e){var t=d[e];if(void 0!==t)return t.exports;var r=d[e]={id:e,loaded:!1,exports:{}};return n[e].call(r.exports,r,r.exports,i),r.loaded=!0,r.exports}i.m=n,i.c=d,e=[],i.O=(t,r,a,o)=>{if(!r){var n=1/0;for(u=0;u=o)&&Object.keys(i.O).every((e=>i.O[e](r[c])))?r.splice(c--,1):(d=!1,o0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[r,a,o]},i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);i.r(o);var n={};t=t||[null,r({}),r([]),r(r)];for(var d=2&a&&e;"object"==typeof d&&!~t.indexOf(d);d=r(d))Object.getOwnPropertyNames(d).forEach((t=>n[t]=()=>e[t]));return n.default=()=>e,i.d(o,n),o},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"assets/js/"+({48:"a94703ab",98:"a7bd4aaa",99:"a8c31fc1",126:"d131c913",235:"a7456010",361:"3205bd6d",401:"17896441",537:"a0d20388",583:"1df93b7f",647:"5e95c892",695:"ec436908",723:"91b3cb8d",742:"aba21aa0",819:"3f2e6990",862:"7cbc9cee",863:"63b14240",899:"a09c2993"}[e]||e)+"."+{48:"78fc18a9",98:"3d51fbb4",99:"c26fc8a4",126:"edef1693",235:"91f0b3e9",237:"f947e7e3",361:"3f885d6f",401:"402e11f1",537:"9147194f",583:"2d1029fa",647:"59168106",695:"008b0520",723:"073a48e1",742:"ad2b3c84",819:"6d5c25a8",862:"4664cf81",863:"e94c1db4",899:"e0cc7812"}[e]+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="pingvindocs:",i.l=(e,t,r,n)=>{if(a[e])a[e].push(t);else{var d,c;if(void 0!==r)for(var f=document.getElementsByTagName("script"),u=0;u{d.onerror=d.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],d.parentNode&&d.parentNode.removeChild(d),o&&o.forEach((e=>e(r))),t)return t(r)},s=setTimeout(b.bind(null,void 0,{type:"timeout",target:d}),12e4);d.onerror=b.bind(null,d.onerror),d.onload=b.bind(null,d.onload),c&&document.head.appendChild(d)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="/pingvin-share/",i.gca=function(e){return e={17896441:"401",a94703ab:"48",a7bd4aaa:"98",a8c31fc1:"99",d131c913:"126",a7456010:"235","3205bd6d":"361",a0d20388:"537","1df93b7f":"583","5e95c892":"647",ec436908:"695","91b3cb8d":"723",aba21aa0:"742","3f2e6990":"819","7cbc9cee":"862","63b14240":"863",a09c2993:"899"}[e]||e,i.p+i.u(e)},(()=>{var e={354:0,869:0};i.f.j=(t,r)=>{var a=i.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(354|869)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var n=i.p+i.u(t),d=new Error;i.l(n,(r=>{if(i.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;d.message="Loading chunk "+t+" failed.\n("+o+": "+n+")",d.name="ChunkLoadError",d.type=o,d.request=n,a[1](d)}}),"chunk-"+t,t)}},i.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,n=r[0],d=r[1],c=r[2],f=0;if(n.some((t=>0!==e[t]))){for(a in d)i.o(d,a)&&(i.m[a]=d[a]);if(c)var u=c(i)}for(t&&t(r);f Contributing | Pingvin Share - + diff --git a/help-out/translate/index.html b/help-out/translate/index.html index b3037ba..986b288 100644 --- a/help-out/translate/index.html +++ b/help-out/translate/index.html @@ -4,7 +4,7 @@ Translating | Pingvin Share - + diff --git a/index.html b/index.html index 7606a96..d5e2e55 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ Pingvin Share - + diff --git a/introduction/index.html b/introduction/index.html index 125d491..6bab8ad 100644 --- a/introduction/index.html +++ b/introduction/index.html @@ -4,7 +4,7 @@ Introduction | Pingvin Share - + diff --git a/setup/configuration/index.html b/setup/configuration/index.html index 1d028d8..8974c94 100644 --- a/setup/configuration/index.html +++ b/setup/configuration/index.html @@ -3,23 +3,20 @@ -Configuration | Pingvin Share - +Configuration | Pingvin Share +

Configuration

-

You can customize Pingvin Share by going to the configuration page in your admin dashboard /admin/config.

-

General

-

The General Tab will let you customize your Pingvin Share instance to your liking.

-

App name

-

To change the name of your instance, insert any text into App name.

-

App URL

-

To make your App available trough your own domain, insert your specific domain and also subdomain if needed. Add an https:// if you have an SSL certificate installed. If this is not the case, use http://.

-

Show home page

-

If you don't like the home page Pingvin Share provides and you just want the upload tab to be the main page, toggle this to true.

- -

Not only you can change your instances name, but also the logo it shows everywhere. To do that, upload an image as png with a 1:1 aspect ratio.

+

General configuration

+

There are plenty of settings you can adjust to your needs. Pingvin Share can be configured in two ways:

+

UI

+

You can change the settings in the UI (/admin/config)

+

YAML file

+

You can set the configuration via a YAML file. If you choose this way, you won't be able to change the settings in the UI.

+

If you use Docker you can create a config.yml file based on the config.example.yaml and mount it to /opt/app/config.yaml in the container.

+

If you run Pingvin Share without Docker, you can create a config.yml file based on the config.example.yaml in the root directory of the project.


Environment variables

For installation specific configuration, you can use environment variables. The following variables are available:

@@ -29,6 +26,6 @@
VariableDefault ValueDescription
PORT3000The port on which the frontend listens.
API_URLhttp://localhost:8080The URL of the backend for the frontend.

Docker specific

Environment variables that are only available when running Pingvin Share with Docker.

-
VariableDefault ValueDescription
TRUST_PROXYfalseWhether Pingvin Share is behind a reverse proxy. If set to true, the X-Forwarded-For header is trusted.
PUID and PGID1000The user and group ID of the user who should run Pingvin Share inside the Docker container and owns the files that are mounted with the volume. You can get the PUID and GUID of your user on your host machine by using the command id. For more information see this article.
+
VariableDefault ValueDescription
TRUST_PROXYfalseWhether Pingvin Share is behind a reverse proxy. If set to true, the X-Forwarded-For header is trusted.
PUID and PGID1000The user and group ID of the user who should run Pingvin Share inside the Docker container and owns the files that are mounted with the volume. You can get the PUID and GUID of your user on your host machine by using the command id. For more information see this article.
\ No newline at end of file diff --git a/setup/installation/index.html b/setup/installation/index.html index e198fa1..5810461 100644 --- a/setup/installation/index.html +++ b/setup/installation/index.html @@ -4,7 +4,7 @@ Installation | Pingvin Share - + diff --git a/setup/integrations/index.html b/setup/integrations/index.html index 4064469..8737ac7 100644 --- a/setup/integrations/index.html +++ b/setup/integrations/index.html @@ -4,7 +4,7 @@ Integrations | Pingvin Share - + diff --git a/setup/oauth2login/index.html b/setup/oauth2login/index.html index 8ef05ac..7c45fa8 100644 --- a/setup/oauth2login/index.html +++ b/setup/oauth2login/index.html @@ -4,7 +4,7 @@ OAuth 2 Login Guide | Pingvin Share - + diff --git a/setup/s3/index.html b/setup/s3/index.html index f1a2830..6cd3fdb 100644 --- a/setup/s3/index.html +++ b/setup/s3/index.html @@ -4,7 +4,7 @@ S3 | Pingvin Share - + @@ -13,7 +13,7 @@ want to store your files on a S3 bucket, you don't have to. Consider that this feature is DISABLED per default.

Configuration

You can configure your S3 provider and bucket by going to the configuration page in your admin dashboard /admin/config/s3.

-
KeyDescriptionValue
enabledThis property enables the storage location on your configured S3 bucket.true
endpointThis property is the host from your S3 bucket.sos-ch-dk-2
regionThis property is the region where the bucket is located.sos-ch-dk-2.exo.io
bucketNameThis property is the name of your S3 bucket.my-bucket
bucketPathThis property defines the folder where you want to store your files which are uploaded. Hint: Don't put a slash in the start or end.my/custom/path (or leave it empty for root)
keyThis is the access key you need to access to your bucket.key-asdf
secretThis is the secret you need to access to your bucket.secret-asdf
+
KeyDescriptionValue
enabledThis property enables the storage location on your configured S3 bucket.true
endpointThe host for your S3 bucket. Endpoint formats vary by provider and some may include the bucket name in the FQDN. Ensure this is configured correctly, as an incorrect value may break some features.sos-ch-dk-2.exo.io
regionThis property is the region where the bucket is located.sos-ch-dk-2
bucketNameThis property is the name of your S3 bucket.my-bucket
bucketPathThis property defines the folder where you want to store your files which are uploaded. Hint: Don't put a slash in the start or end.my/custom/path (or leave it empty for root)
keyThis is the access key you need to access to your bucket.key-asdf
secretThis is the secret you need to access to your bucket.secret-asdf

Don't forget to save the configuration. :)

ClamAV

Consider that ClamAV scans are not available at the moment if you store your files in a S3 bucket.

diff --git a/setup/upgrading/index.html b/setup/upgrading/index.html index a06d6d4..c58566f 100644 --- a/setup/upgrading/index.html +++ b/setup/upgrading/index.html @@ -4,7 +4,7 @@ Upgrading | Pingvin Share - +