No project description provided
Project description
r-shepard
Simple, self-hosted solution for collaborative (not real-time) R computing leveraging podman, RStudio, and Tailscale.
Built with Django and HTMX.
Develop
First start the development environment:
devenv up # starts redis, celery worker and celery beat
run-tests # runs the tests
Then start the Django development server:
python manage.py runserver # This could also be done from your IDE / debugging environment
Installation instructions (Ubuntu 22.04).
Requirements
- Install podman (used for running RStudio containers)
sudo apt install podman`
- Install Tailscale (used for secure access to the RStudio containers):
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list
sudo apt-get update
sudo apt-get install tailscale
- Install git (needed for auto-commit functionality)
sudo apt install git
- Install
redis-server
(needed for celery which is used for scheduling the auto-commit tasks)
sudo apt install redis-server
Django app
pip install r-shepard
Minimum Viable Product
- Add installation instructions for Ubuntu 22.04
-
gitwatch integrationRolled my own solution. Need to document and integrate it into the UI. - Publish on PyPi
-
Add views for project creationDjango admin is enough for now. - Test R Project/Package management inside the container (e.g.
renv
) - Add Volume management
- Setup Frontend framework (e.g.
Bootstrap, PicoCSS) - Setup 2FA
- Add Tailscale Serve integration
- Add basic container management via podman
- Add basic views for projects and container management
-
Add Tailscale Funnel integrationNot needed right now -
Make it possible to assign users to projects (only superusers should be able to create projects and assign users to them)Not needed right now
Potential Future Features
- LDAP integration
- container-specific and user-specific auto-commits
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
r_shepard-0.1.3.tar.gz
(53.3 kB
view hashes)
Built Distribution
r_shepard-0.1.3-py3-none-any.whl
(64.9 kB
view hashes)
Close
Hashes for r_shepard-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f99881516dff8f7acb7a0bea252c847c58b854b49d4dcf6f872fc4cf2a967b8b |
|
MD5 | 45d057166411d1c56c20ef92f47f8ba4 |
|
BLAKE2b-256 | 79a5fe1e20fd599d1674dc050dca42c5d94e0f5aedabdcd58a5012c286c7b203 |