A quick file sharing service. Upload a file and get a link to share with others. The file will be deleted after a certain amount of time or after a certain number of downloads.
run RACK_ENV=test rake test
run rake dev
to start the server with hot reload
Anonymoose runs in a microk8s kubernetes cluster
Useful commands
microk8s kubectl apply -f example.yml -n your_namespace
microk8s kubectl get deployments -n your_namespace
Essentially, throw microk8s
in front of your normal kubectl
commands.
- Server Dell R710 running Ubuntu 24.04
- Microk8's to deploy a kubernetes cluster
- Github Actions for CI testing. The app is booted in a docker container and tests run from there
- [Buildkite] for kubernetes deployments. It holds the scripts that take care of applying the kubernetes configurations
- Puma as the rack app and Sinatra for routes
- Memcached for link caching and file metadata
- Minio S3 storage for files
- Sidekiq for background jobs such as deleting files after TTL expiration Coming Soon
- Redis Used for Sidekiq Coming Soon
- BeerCSS Material Design
- Axiom Logging and monitoring
- OpenTelemetry for tracing
- K6 for load testing