Table of Contents
This repository provides pfioh
-- a server process (think of it as anonymous ftp
that natively understands recursive paths) that allows for file/path push/copy.
pfioh
is a service that pushes/pulls files and directories between different locations.
Installation is relatively straightforward, and we recommend using either python virtual environments or docker.
On Ubuntu, install the Python virtual environment creator
sudo apt install virtualenv
Then, create a directory for your virtual environments e.g.:
mkdir ~/python-envs
You might want to add to your .bashrc file these two lines:
export WORKON_HOME=~/python-envs
source /usr/local/bin/virtualenvwrapper.sh
Then you can source your .bashrc and create a new Python3 virtual environment:
source .bashrc
mkvirtualenv --python=python3 python_env
To activate or "enter" the virtual env:
workon python_env
To deactivate virtual env:
deactivate
The easiest option however, is to just use the fnndsc/pfioh
dock.
docker pull fnndsc/pfioh
and then run
docker run --name pfioh -v /home:/Users --rm \
fnndsc/pfioh \
--forever --httpResponse \
--storeBase=/tmp --createDirsAsNeeded
For pfioh
detailed information, see the pfioh wiki page.
[--ip <IP>]
The IP interface on which to listen. Defaults to current host IP.
[--port <port>]
The port on which to listen. Defaults to '5055'.
[--forever]
Start service and do not terminate.
[--httpResponse]
Send return strings as HTTP formatted replies with content-type html.
[--storeBase <storagePath>]
A file system location in the network space accessible to ``pfioh``
that is used to unpack received files and also store results of
processing.
[--createDirsAsNeeded]
If specified, create dirs in the base storage as needed.
[--enableTokenAuth]
Enables token based authorization and can be configured to look for a .ini
file or an openshift secret.
[--tokenPath <tokenPath>]
Specify the absolute path to the token in the file system.
By default, this looks for the pfiohConfig.ini file in the current working directory.
[--swift-storage]
If specified, use Swift as object storage.
[--test]
Run internal tests.
[-x|--desc]
Provide an overview help page.
[-y|--synopsis]
Provide a synopsis help summary.
[--version]
Print internal version number and exit.
[-v|--verbosity <level>]
Set the verbosity level. "0" typically means no/minimal output. Allows for
more fine tuned output control as opposed to '--quiet' that effectively
silences everything.
Start pfioh
in forever
mode, accessible on localhost:
pfioh \\
--forever \\
--port 5055 \\
--storeBase=/tmp \\
--httpResponse \\
--createDirsAsNeeded \\
--verbosity 1 \\
--ip 127.0.0.1