Install Pydio Booster Manually
Installing Binary
You can download our booster from DOWNLOAD PYDIO BOOSTER choosing the correct version for your architecture.
Network Configuration
The diagram below shows how Pydio Booster will communicate with your server.
Configure and start
Before being able to configure Pydio Booster you will need to generate a TOKENP and TOKENS pair.
Initial Pydio setup
Go to Message Queuing plugin configuration Application Parameters > Pydio Booster:
Here you can enable the socket for Booster and set the parameters.Now scroll down to Administrative API key and press Generate API Key. The resulting file should be available in data/plugins/core.mq/apikey(it will be found in this form TOKENP:TOKENS). You will need the information from this file to replace the TOKENP and TOKENS in the following sample configuration files.
Pydio Booster component was built on top of Caddy, leveraging NSQ, it implements websockets and an upload server. Here is a sample configuration files to make it work use them and change the values to the ones that you have, it's also useful for advanced configurations:
pydioconf.sample:
{
"scheduler": {
"host": "http:\/\/YOUR_HOSTNAME",
"tokenP": "TOKENP",
"tokenS": "TOKENS",
"minutes": 2
},
"nsq": {
"host": "0.0.0.0",
"port": 4150
},
"caddyFilePath": ".\/pydiocaddy"
}
pydiocaddy.sample:
http://127.0.0.1:8090 {
pydiows /ws {
pre {
if {>Cookie} has "AjaXplorer"
type request
url http://YOUR_HOSTNAME:YOUR_OPTIONAL_PORT?get_action=keystore_generate_auth_token&device=websocket
cookie AjaXplorer
out token
}
pre {
type request
url http://YOUR_HOSTNAME:YOUR_OPTIONAL_PORT/api/pydio/ws_authenticate?key=TOKENP:TOKENS
query auth_hash
query auth_token
out user
}
}
header /io {
Access-Control-Allow-Origin http://YOUR_HOSTNAME:YOUR_OPTIONAL_PORT
Access-Control-Request-Headers *
Access-Control-Allow-Methods POST
Access-Control-Allow-Headers Range
Access-Control-Allow-Credentials true
}
pydioupload /io {
pre {
type node
out node
}
pre {
if {query} has "minisite_session"
type request
url http://YOUR_HOSTNAME:YOUR_OPTIONAL_PORT?get_action=keystore_generate_auth_token&device=upload
query minisite_session
cookie AjaXplorer_Shared
out token
}
pre {
if {query} not_has "minisite_session"
if {>Cookie} has "AjaXplorer="
type request
url http://YOUR_HOSTNAME:YOUR_OPTIONAL_PORT?get_action=keystore_generate_auth_token&device=upload
cookie AjaXplorer
out token
}
pre {
type request
url http://YOUR_HOSTNAME:YOUR_OPTIONAL_PORT/api/{repo}/upload/put/{nodedir}?xhr_uploader=true
header X-File-Direct-Upload request-options
header X-Pydio-Admin-Auth TOKENP:TOKENS
header X-File-Name {nodename}
query *
out options
}
post {
type request
url http://YOUR_HOSTNAME:YOUR_OPTIONAL_PORT/api/{repo}/upload/put/{nodedir}?xhr_uploader=true
header X-File-Direct-Upload upload-finished
header X-Pydio-Admin-Auth TOKENP:TOKENS
header X-File-Name {nodename}
query auth_hash
query auth_token
out body
}
}
pydioadmin /admin
basicauth /admin TOKENP TOKENS
}
To run Pydio Booster you simply need to run:
/path/to/pydiobooster -conf /path/to/pydioconf
For the path/to/pydiobooster, pydiobooster stands for the file that you downloaded above it should be named Pydio by default
Make sure to pass an absolute path to the conf.
However especially if you want to use the upload feature we recommend you to run it changing the process' owner:
sudo -u www-data /path/to/pydiobooster -conf /path/to/pydioconf
Troubleshooting
You can check the websocket status in your web browser's developer tools reloading the page with the console open (Chrome). If you dont see a switching back to polling
message it means that it's working.
You should regularly check your logs.
For more advanced configurations and troubleshooting, make sure to read the dedicated articles in the Knowledge Base.
Back to top