- Created test to verify homepage host validation issue - Identified that HOMEPAGE_ALLOWED_HOSTS environment variable was needed - Updated homepage Docker Compose with proper allowed hosts setting - Added 'localhost:4000,127.0.0.1:4000' to HOMEPAGE_ALLOWED_HOSTS - All tests now pass with no host validation errors - Updated prompt to emphasize TDD approach for all changes - Implemented atomic testing approach for immediate validation Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
111 lines
5.5 KiB
Plaintext
111 lines
5.5 KiB
Plaintext
I am a solo entrepreneur and freelancer.
|
|
|
|
Hosted on Netcup VPS — managed via Cloudron
|
|
|
|
| Icon | Service | Purpose / Notes |
|
|
|------|---------|-----------------|
|
|
| 📓 | Joplin Server | Self-hosted note sync / personal knowledge base |
|
|
| 🔔 | ntfy.sh | Simple push notifications / webhooks |
|
|
| 🖼️ | Firefly | Personal photo management |
|
|
| 📂 | Paperless-NGX | Document ingestion / OCR / archival |
|
|
| 🧾 | Dolibarr | ERP / CRM for small business |
|
|
| 🎨 | Penpot | Design & SVG collaboration (open source Figma alternative) |
|
|
| 🎧 | Audiobookshelf | Self-hosted audiobooks & media server |
|
|
| 🖨️ | Stirling-PDF | PDF utilities / manipulation |
|
|
| 📰 | FreshRSS | Self-hosted RSS reader |
|
|
| 🤖 | OpenWebUI | Web UI for local LLM / AI interaction |
|
|
| 🗄️ | MinIO | S3-compatible object storage |
|
|
| 📝 | Hastebin | Quick paste / snippets service |
|
|
| 📊 | Prometheus | Metrics collection |
|
|
| 📈 | Grafana | Metrics visualization / dashboards |
|
|
| 🐙 | Gitea | Git hosting (also Docker registry + CI integrations) |
|
|
| 🔐 | Vault | Secrets management |
|
|
| 🗂️ | Redmine | Project management / issue tracking |
|
|
| 👥 | Keycloak | Single Sign-On / identity provider |
|
|
| 📝 | Hedgedoc | Collaborative markdown editor / docs |
|
|
| 🔎 | SearxNG | Privacy-respecting metasearch engine |
|
|
| ⏱️ | Uptime Kuma | Service uptime / status monitoring |
|
|
| 📷 | Immich | Personal photo & video backup server |
|
|
| 🔗 | LinkWarden | Personal link/bookmark manager |
|
|
| … | etc. | Additional Cloudron apps and personal services |
|
|
|
|
Notes:
|
|
- All apps are deployed under Cloudron on a Netcup VPS.
|
|
- This list is organized for quick visual reference; each entry is the hosted service name + short purpose.
|
|
|
|
I have been focused on the operations and infrastructure of building my businesses.
|
|
Hence deployment of Cloudron and the services on it and moving data into it from various SAAS and legacy LAMP systems.
|
|
|
|
Now I am focusing on setting up my development environment. I have a Debian 12 VM . I am setting up a fully dockerized development environment.
|
|
I have been putting together a list of support services to run. This is meant to run locally on my workstation and be highly personal/customized.
|
|
|
|
So far I have selected:
|
|
|
|
atuin
|
|
httpbin
|
|
Dozzle
|
|
code-server
|
|
wiremock
|
|
kroki
|
|
redoc
|
|
mailhog
|
|
archivebox
|
|
tubearchivst
|
|
toxiproxy
|
|
reactiveresume
|
|
wakaapi
|
|
atomic tracker
|
|
portainer
|
|
hoppscotch
|
|
Jaeger All In One
|
|
swagger-ui
|
|
webhook.site
|
|
Adminer
|
|
Watchtower
|
|
https://github.com/google/cadvisor
|
|
node-exporter (containerized and exporting host system metrics)
|
|
pumba
|
|
Loki
|
|
Promtail
|
|
OpenTelemetry Collector
|
|
Registry2
|
|
CoreDNS
|
|
step-ca
|
|
Unleash
|
|
OpenPolicyAgent
|
|
Cadence workflow engine
|
|
https://github.com/pact-foundation/pact_broker
|
|
|
|
|
|
|
|
|
|
All of the docker artifacts must be prefixed with TSYSDevStack-SupportStack-Demo . A full unit and end to end test suite providing greater than 75% coverage with 100% of the tests │
|
|
passing is required. Test driven development process must be STRICTLY adhered to. This means that a test is written, the test is executed, the test fails, then the minimal amount of code is written to get the test to pass. Also │
|
|
since this stack has such a large number of components, I want the work to be done on one component at a time until it's fully working. The foundational elements of docker socket proxy , portainer, homepage should be done │
|
|
first. Resource limits should be set on the components sufficient for a single user demo.
|
|
|
|
|
|
|
|
I use Tailscale across Cloudron, my dev vm, my laptop/iphone/ipad to securely access all my workstation hosted services.
|
|
Cloudron apps are 100% 2fa/SSO
|
|
|
|
I have a separate development stack that I am developing. It has a devcontainer base and then various specialized containers to extend it. Each project will ship with an identical docker compose file in dev and in prod (we don't have any other environments). We use 12 factor for everything.
|
|
I have a separate lifecycle (build/package/release) stack that I am developing. That is where things like Trivy will go.
|
|
We DO NOT use the public cloud. Hard NO. However we have some products which customers may deploy to the public cloud. So our dev environment will need public cloud tooling. Any cloud dev will happen in the cloud in a cloud dev environment. No local support needed.
|
|
|
|
We DO NOT use the public cloud. Hard NO. However we have some products which customers may deploy to the public cloud. So our dev environment will need public cloud tooling. Any cloud dev will happen in the cloud in a cloud dev environment. No local support needed.
|
|
|
|
I am fine with using ports to access all the services. No need for Caddy/Traefik. Homepage provides a nice unified entry point for good UI/UX/DX already.
|
|
I do not need a personal kanban/roadmap. That all lives in Redmine.
|
|
I have a local influxdb/grafana for my own data collection that isn't for my startup/projects/clients. Its for personal data like my Apple Health exports.
|
|
Each of my dev projects will use the creds container in the lifecycle stack. As such , I don't need cred injector in the support stack.
|
|
|
|
A database and other dependencies would be setup per project. Not in the SupportStack. The SupportStack is an always running no matter what stack. Does that make sense? It's meant to be leveraged across projects (things like Mailhog and Atuin for example) as well as by the developer for their personal enjoyment/use (atomic tracker for example).
|
|
|
|
|
|
Do you have any ideas for what other things I could add to my list of services in the SupportStack?
|
|
|
|
|
|
We will have separate conversations about the LifecycleStack for build/package/release tooling
|
|
|