Dataset.sh server
Project description
dataset.sh server
Using Docker
dataset.sh
server is available as a docker container datasetsh/server
, by default it use the following
configuration:
- data storage folder:
/dataset-sh-storage/data
- server config path:
/dataset-sh-storage/dataset-sh-server-config.json
You can mount a local folder as a persistent storage for this container.
create an empty config file
docker run -v $(pwd):/dataset-sh-storage datasetsh/server dataset-sh-server-cli init
# -v $(pwd):/dataset-sh-storage -> mount current folder as storage folder
import
docker run -v $(pwd):/dataset-sh-storage -v /path/to/dataset/file:/tmp/upload.dataset datasetsh/server dataset.sh import username/dataset-name -f /tmp/upload.dataset
# -v $(pwd):/dataset-sh-storage -> mount current folder as storage folder
# -v /path/to/dataset/file:/tmp/upload.dataset -> mount the file to import
# dataset.sh import username/dataset-name -f /tmp/upload.dataset
Start server
docker run -p 8989:8989 \ # map container:8989 to host:8989 -v $(pwd):/dataset-sh-storage datasetsh/server
Without Docker
You can also use it without docker.
pip install dataset_sh_server
Create an empty config file
dataset-sh-server-cli init
Start server
gunicorn -b 127.0.0.1:8989 "dataset_sh_server.app:create_app()"
# bind to 0.0.0.0 for external access
dataset.sh -b ./ import username/dataset_name -f /path/to/dataset/file
Management scripts
If you are using docker, you can use the following management script for you own convenience.
#!/bin/bash
set -e
must_exist() {
local var_name="$1"
local var_value="$2"
if [ -z "$var_value" ]; then
echo "Error: '$var_name' is not defined or empty"
exit 1
fi
return
}
print_and_execute() {
local cmd="$@"
echo Executing CMD:
echo $'\t' $cmd
$cmd
}
start_server () {
local port=${1:-8989}
local storage_base_path=${2:-$(pwd)}
must_exist storage_base_path $storage_base_path
must_exist port $port
local cmd="docker run -p ${port}:8989 -v ${storage_base_path}:/dataset-sh-storage datasetsh/server"
print_and_execute $cmd
}
init_config () {
local storage_base_path=${1:-$(pwd)}
must_exist storage_base_path $storage_base_path
local cmd="docker run -v ${storage_base_path}:/dataset-sh-storage datasetsh/server python -m dataset_sh_server.cli init"
print_and_execute $cmd
}
set_password () {
local username=${1}
local storage_base_path=${2:-$(pwd)}
must_exist storage_base_path $storage_base_path
must_exist username $username
local cmd="docker run -it -v ${storage_base_path}:/dataset-sh-storage datasetsh/server python -m dataset_sh_server.cli set-password ${username}"
print_and_execute $cmd
}
import_dataset () {
local dataset_name=$1
local dataset_path=$2
local storage_base_path=${3:-$(pwd)}
must_exist dataset_name $dataset_name
must_exist dataset_path $dataset_path
must_exist storage_base_path $storage_base_path
local cmd="docker run -v ${storage_base_path}:/dataset-sh-storage -v ${dataset_path}:/tmp/upload.dataset datasetsh/server dataset.sh import ${dataset_name} -f /tmp/upload.dataset"
print_and_execute $cmd
}
"$@"
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file dataset_sh_server-0.0.5.tar.gz
.
File metadata
- Download URL: dataset_sh_server-0.0.5.tar.gz
- Upload date:
- Size: 2.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 132768ef48d419ca5a72b8bbe225e7d81f81fbfe62ded8818a347763e3bcd8e9 |
|
MD5 | 2c47723abb2e9129b81af98b215831f9 |
|
BLAKE2b-256 | 851aec9559d7a83cccd8ea7e3266aa885d4a563eb6908da26181461547eab9a2 |
File details
Details for the file dataset_sh_server-0.0.5-py3-none-any.whl
.
File metadata
- Download URL: dataset_sh_server-0.0.5-py3-none-any.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 902a4795d3f25e6258f35248fbdc7e7456cfe278a15ca132cf8788f444c9ca31 |
|
MD5 | 4b997e3a9435c497bcabf142b464d7f8 |
|
BLAKE2b-256 | f531e03b190d6077ad62421d7cfca8752048cd7df37f8cbe7668c5966baaefe6 |