<img src="https://raw.githubusercontent.com/sciapp/sampledb/develop/docs/static/img/logo.svg" align="right" width="60" height="60" />
# SampleDB
[![MIT license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
[![DOI](https://zenodo.org/badge/221237572.svg)](https://zenodo.org/badge/latestdoi/221237572)
[![DOI](https://joss.theoj.org/papers/10.21105/joss.02107/status.svg)](https://doi.org/10.21105/joss.02107)
SampleDB is a web-based sample and measurement metadata database.
## Documentation
You can find the documentation for the current release at https://scientific-it-systems.iffgit.fz-juelich.de/SampleDB/.
## Getting Started
We recommend using our pre-built Docker images for setting up `SampleDB`. You will need two containers, one for a PostgreSQL database and another for SampleDB itself, and a directory to store all files in.
If you would like to set up a development version of SampleDB instead, please see the [contribution guide](https://github.com/sciapp/sampledb/blob/develop/CONTRIBUTING.md).
If you do not have Docker installed yet, please [install Docker](https://docs.docker.com/engine/install/).
### Using docker-compose
First, get the [docker-compose.yml](https://raw.githubusercontent.com/sciapp/sampledb/develop/docker-compose.yml.dist) configuration file. You can git clone this repo or just get the file:
```bash
curl https://raw.githubusercontent.com/sciapp/sampledb/develop/docker-compose.yml.dist --output docker-compose.yml
```
Then simply bring everything up with:
```bash
docker compose up -d
```
### Using docker commands
First, start your database container:
```bash
docker run \
-d \
-e POSTGRES_PASSWORD=password \
-e PGDATA=/var/lib/postgresql/data/pgdata \
-v `pwd`/pgdata:/var/lib/postgresql/data/pgdata:rw \
--restart=always \
--name sampledb-postgres \
postgres:15
```
Next, start the SampleDB container:
```bash
docker run \
-d \
--link sampledb-postgres \
-e SAMPLEDB_CONTACT_EMAIL=sampledb@example.com \
-e SAMPLEDB_MAIL_SERVER=mail.example.com \
-e SAMPLEDB_MAIL_SENDER=sampledb@example.com \
-e SAMPLEDB_ADMIN_PASSWORD=password \
-e SAMPLEDB_SQLALCHEMY_DATABASE_URI=postgresql+psycopg2://postgres:password@sampledb-postgres:5432/postgres \
--restart=always \
--name sampledb \
-p 8000:8000 \
sciapp/sampledb:0.30.0
```
### Once it's started
This will start a minimal SampleDB installation at `http://localhost:8000` and allow you to sign in with the username `admin` and the password `password` (which you should change immediately after signing in).
To learn how to further set up SampleDB, please follow the rest of the [Getting Started guide](https://scientific-it-systems.iffgit.fz-juelich.de/SampleDB/administrator_guide/getting_started.html).
## Contributing
If you want to improve SampleDB, please read the [contribution guide](https://github.com/sciapp/sampledb/blob/develop/CONTRIBUTING.md) for a few notes on how to report issues or submit changes.
## Support
If you run into any issues setting up or running SampleDB, please [open an issue on GitHub](https://github.com/sciapp/sampledb/issues/new).
You can also subscribe to the [SampleDB mailing list](https://lists.fz-juelich.de/mailman/listinfo/sampledb) to learn about new features and to discuss any questions regarding SampleDB.
Raw data
{
"_id": null,
"home_page": "https://github.com/sciapp/sampledb",
"name": "sampledb",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Florian Rhiem",
"author_email": "f.rhiem@fz-juelich.de",
"download_url": "https://files.pythonhosted.org/packages/6e/41/1a1b6e169ec8595c69384cedd815fbdfb784d926c9ad29b7528005c661f0/sampledb-0.30.0.tar.gz",
"platform": null,
"description": "<img src=\"https://raw.githubusercontent.com/sciapp/sampledb/develop/docs/static/img/logo.svg\" align=\"right\" width=\"60\" height=\"60\" />\n\n# SampleDB\n\n[![MIT license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n[![DOI](https://zenodo.org/badge/221237572.svg)](https://zenodo.org/badge/latestdoi/221237572)\n[![DOI](https://joss.theoj.org/papers/10.21105/joss.02107/status.svg)](https://doi.org/10.21105/joss.02107)\n\nSampleDB is a web-based sample and measurement metadata database.\n\n## Documentation\n\nYou can find the documentation for the current release at https://scientific-it-systems.iffgit.fz-juelich.de/SampleDB/.\n\n## Getting Started\n\nWe recommend using our pre-built Docker images for setting up `SampleDB`. You will need two containers, one for a PostgreSQL database and another for SampleDB itself, and a directory to store all files in.\n\nIf you would like to set up a development version of SampleDB instead, please see the [contribution guide](https://github.com/sciapp/sampledb/blob/develop/CONTRIBUTING.md).\n\nIf you do not have Docker installed yet, please [install Docker](https://docs.docker.com/engine/install/).\n\n### Using docker-compose\n\nFirst, get the [docker-compose.yml](https://raw.githubusercontent.com/sciapp/sampledb/develop/docker-compose.yml.dist) configuration file. You can git clone this repo or just get the file:\n\n```bash\ncurl https://raw.githubusercontent.com/sciapp/sampledb/develop/docker-compose.yml.dist --output docker-compose.yml\n```\n\nThen simply bring everything up with:\n\n```bash\ndocker compose up -d\n```\n\n### Using docker commands\n\nFirst, start your database container:\n\n```bash\ndocker run \\\n -d \\\n -e POSTGRES_PASSWORD=password \\\n -e PGDATA=/var/lib/postgresql/data/pgdata \\\n -v `pwd`/pgdata:/var/lib/postgresql/data/pgdata:rw \\\n --restart=always \\\n --name sampledb-postgres \\\n postgres:15\n```\n\nNext, start the SampleDB container:\n\n```bash\ndocker run \\\n -d \\\n --link sampledb-postgres \\\n -e SAMPLEDB_CONTACT_EMAIL=sampledb@example.com \\\n -e SAMPLEDB_MAIL_SERVER=mail.example.com \\\n -e SAMPLEDB_MAIL_SENDER=sampledb@example.com \\\n -e SAMPLEDB_ADMIN_PASSWORD=password \\\n -e SAMPLEDB_SQLALCHEMY_DATABASE_URI=postgresql+psycopg2://postgres:password@sampledb-postgres:5432/postgres \\\n --restart=always \\\n --name sampledb \\\n -p 8000:8000 \\\n sciapp/sampledb:0.30.0\n```\n\n### Once it's started\n\nThis will start a minimal SampleDB installation at `http://localhost:8000` and allow you to sign in with the username `admin` and the password `password` (which you should change immediately after signing in).\n\nTo learn how to further set up SampleDB, please follow the rest of the [Getting Started guide](https://scientific-it-systems.iffgit.fz-juelich.de/SampleDB/administrator_guide/getting_started.html).\n\n## Contributing\n\nIf you want to improve SampleDB, please read the [contribution guide](https://github.com/sciapp/sampledb/blob/develop/CONTRIBUTING.md) for a few notes on how to report issues or submit changes.\n\n## Support\n\nIf you run into any issues setting up or running SampleDB, please [open an issue on GitHub](https://github.com/sciapp/sampledb/issues/new).\n\nYou can also subscribe to the [SampleDB mailing list](https://lists.fz-juelich.de/mailman/listinfo/sampledb) to learn about new features and to discuss any questions regarding SampleDB.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A sample and measurement metadata database",
"version": "0.30.0",
"project_urls": {
"Homepage": "https://github.com/sciapp/sampledb"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6e411a1b6e169ec8595c69384cedd815fbdfb784d926c9ad29b7528005c661f0",
"md5": "be44285ac6cd13e941672cadec612940",
"sha256": "6c126463cd1f1a5d0adb5703a06a59666669690e491a83e0d101e6d8dadd25d2"
},
"downloads": -1,
"filename": "sampledb-0.30.0.tar.gz",
"has_sig": false,
"md5_digest": "be44285ac6cd13e941672cadec612940",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3939480,
"upload_time": "2024-12-09T12:51:44",
"upload_time_iso_8601": "2024-12-09T12:51:44.565396Z",
"url": "https://files.pythonhosted.org/packages/6e/41/1a1b6e169ec8595c69384cedd815fbdfb784d926c9ad29b7528005c661f0/sampledb-0.30.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-09 12:51:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "sciapp",
"github_project": "sampledb",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "APScheduler",
"specs": [
[
"==",
"3.10.4"
]
]
},
{
"name": "autocommand",
"specs": [
[
"==",
"2.2.2"
]
]
},
{
"name": "babel",
"specs": [
[
"==",
"2.16.0"
]
]
},
{
"name": "bcrypt",
"specs": [
[
"==",
"4.2.1"
]
]
},
{
"name": "beautifulsoup4",
"specs": [
[
"==",
"4.12.3"
]
]
},
{
"name": "bleach",
"specs": [
[
"==",
"6.2.0"
]
]
},
{
"name": "blinker",
"specs": [
[
"==",
"1.9.0"
]
]
},
{
"name": "Brotli",
"specs": [
[
"==",
"1.1.0"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2024.8.30"
]
]
},
{
"name": "cffi",
"specs": [
[
"==",
"1.17.1"
]
]
},
{
"name": "chardet",
"specs": [
[
"==",
"5.2.0"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "cheroot",
"specs": [
[
"==",
"10.0.1"
]
]
},
{
"name": "CherryPy",
"specs": [
[
"==",
"18.10.0"
]
]
},
{
"name": "click",
"specs": [
[
"==",
"8.1.7"
]
]
},
{
"name": "colorhash",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "configparser",
"specs": [
[
"==",
"7.1.0"
]
]
},
{
"name": "cryptography",
"specs": [
[
"==",
"43.0.3"
]
]
},
{
"name": "cssselect2",
"specs": [
[
"==",
"0.7.0"
]
]
},
{
"name": "dnspython",
"specs": [
[
"==",
"2.7.0"
]
]
},
{
"name": "email_validator",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "fido2",
"specs": [
[
"==",
"1.1.3"
]
]
},
{
"name": "Flask",
"specs": [
[
"==",
"3.1.0"
]
]
},
{
"name": "flask-babel",
"specs": [
[
"==",
"4.0.0"
]
]
},
{
"name": "Flask-HTTPAuth",
"specs": [
[
"==",
"4.8.0"
]
]
},
{
"name": "Flask-Login",
"specs": [
[
"==",
"0.6.3"
]
]
},
{
"name": "Flask-Mail",
"specs": [
[
"==",
"0.10.0"
]
]
},
{
"name": "Flask-MonitoringDashboard",
"specs": [
[
"==",
"3.3.2"
]
]
},
{
"name": "Flask-SQLAlchemy",
"specs": [
[
"==",
"3.1.1"
]
]
},
{
"name": "Flask-WTF",
"specs": [
[
"==",
"1.2.2"
]
]
},
{
"name": "flexcache",
"specs": [
[
"==",
"0.3"
]
]
},
{
"name": "flexparser",
"specs": [
[
"==",
"0.4"
]
]
},
{
"name": "fonttools",
"specs": [
[
"==",
"4.55.0"
]
]
},
{
"name": "greenlet",
"specs": [
[
"==",
"3.1.1"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.10"
]
]
},
{
"name": "itsdangerous",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "jaraco.collections",
"specs": [
[
"==",
"5.1.0"
]
]
},
{
"name": "jaraco.context",
"specs": [
[
"==",
"6.0.1"
]
]
},
{
"name": "jaraco.functools",
"specs": [
[
"==",
"4.1.0"
]
]
},
{
"name": "jaraco.text",
"specs": [
[
"==",
"4.0.0"
]
]
},
{
"name": "Jinja2",
"specs": [
[
"==",
"3.1.4"
]
]
},
{
"name": "kaleido",
"specs": [
[
"==",
"0.2.1"
]
]
},
{
"name": "ldap3",
"specs": [
[
"==",
"2.9.1"
]
]
},
{
"name": "Markdown",
"specs": [
[
"==",
"3.7"
]
]
},
{
"name": "MarkupSafe",
"specs": [
[
"==",
"3.0.2"
]
]
},
{
"name": "more-itertools",
"specs": [
[
"==",
"10.5.0"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"2.1.3"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"24.2"
]
]
},
{
"name": "pillow",
"specs": [
[
"==",
"10.4.0"
]
]
},
{
"name": "Pint",
"specs": [
[
"==",
"0.24.4"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"4.3.6"
]
]
},
{
"name": "plotly",
"specs": [
[
"==",
"5.24.1"
]
]
},
{
"name": "portend",
"specs": [
[
"==",
"3.2.0"
]
]
},
{
"name": "psutil",
"specs": [
[
"==",
"6.1.0"
]
]
},
{
"name": "psycopg2-binary",
"specs": [
[
"==",
"2.9.10"
]
]
},
{
"name": "pyasn1",
"specs": [
[
"==",
"0.6.1"
]
]
},
{
"name": "pycparser",
"specs": [
[
"==",
"2.22"
]
]
},
{
"name": "pydyf",
"specs": [
[
"==",
"0.11.0"
]
]
},
{
"name": "pyotp",
"specs": [
[
"==",
"2.9.0"
]
]
},
{
"name": "pyphen",
"specs": [
[
"==",
"0.15.0"
]
]
},
{
"name": "python-dateutil",
"specs": [
[
"==",
"2.9.0.post0"
]
]
},
{
"name": "pytz",
"specs": [
[
"==",
"2024.2"
]
]
},
{
"name": "qrcode",
"specs": [
[
"==",
"8.0"
]
]
},
{
"name": "reportlab",
"specs": [
[
"==",
"4.2.5"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.31.0"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.14.1"
]
]
},
{
"name": "setuptools",
"specs": [
[
"==",
"75.5.0"
]
]
},
{
"name": "six",
"specs": [
[
"==",
"1.16.0"
]
]
},
{
"name": "soupsieve",
"specs": [
[
"==",
"2.6"
]
]
},
{
"name": "SQLAlchemy",
"specs": [
[
"==",
"2.0.36"
]
]
},
{
"name": "tempora",
"specs": [
[
"==",
"5.7.0"
]
]
},
{
"name": "tenacity",
"specs": [
[
"==",
"9.0.0"
]
]
},
{
"name": "tinycss2",
"specs": [
[
"==",
"1.4.0"
]
]
},
{
"name": "tinyhtml5",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "typing_extensions",
"specs": [
[
"==",
"4.12.2"
]
]
},
{
"name": "tzlocal",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"2.2.3"
]
]
},
{
"name": "weasyprint",
"specs": [
[
"==",
"63.0"
]
]
},
{
"name": "webencodings",
"specs": [
[
"==",
"0.5.1"
]
]
},
{
"name": "Werkzeug",
"specs": [
[
"==",
"3.1.3"
]
]
},
{
"name": "WTForms",
"specs": [
[
"==",
"3.2.1"
]
]
},
{
"name": "zc.lockfile",
"specs": [
[
"==",
"3.0.post1"
]
]
},
{
"name": "zopfli",
"specs": [
[
"==",
"0.2.3.post1"
]
]
}
],
"lcname": "sampledb"
}