I would like to begin setting objectives and tracking progress for this platform on a quarterly basis using Discourse threads. As a starting point, I will simply create a post at the beginning of each quarter outlining objectives. At the end of the quarter, a reflection will be posted to the same thread. These will largely be based on the projects and milestones on Gitea, and their composition can be hosted on Owncast. Given Q1 is almost over, this will not be fully implemented until Q2; however, I still have the opportunity to plan, host, and post this quarterβs reflection.
This reflection focuses mostly on my YouTube statistics, as my audience is predominantly on that platform. From the perspective of managing a YouTube channel, I think my latest content has been consistent, but unfocused, less clear, and less suited for growing a YouTube channel (though that is not necessarily my intention).
Overall, I am happy with what has been accomplished over the past few months:
- The Kubernetes cluster was made production-ready
- Initial services were deployed, including Discourse, Gitea, and Owncast
- A regular schedule for live streaming was established and maintained
- A workflow for uploading the recorded streams to MinIO, Discourse, and YouTube was established
Community feedback on the recent direction of the YouTube channel and this platform as a whole would be greatly appreciated!
Each live stream hosted during this quarter was posted to its own thread. I have decided to try posting them as replies into a single, quarterly thread instead. As such, those original posts have been deleted (there were no replies), and their contents have been copied below:
Self-hosted services on QEMU and Kubernetes
Live stream hosted on 2025-01-25 with Owncast at 16:01:21
Demo of a network of self-hosted services on a Kubernetes cluster virtualized with QEMU using Ansible playbooks.
- OpenLDAP
- phpLDAPadmin
- Owncast
- Gitea
- Nextcloud
- MinIO
- Grafana
- Matrix
- Element
- Synapse
Discourse, Fediverse, and the Kraken API
Streamed live on 2025-02-01 with Owncast at 16:16:23 EST
Chapters
00:00 - 07:22 Intro
07:22 -13:39 The Fediverse
13:39 - 20:59 Projects and Milestones in Gitea/GitHub
20:59 - 32:51 Algorithmic Cryptocurrency Trading on Kraken API
Additional links
https://joinfediverse.wiki/Fediverse
Platform monetization and a Matrix client for Python
Live stream hosted on 2025-02-08 with Owncast at 16:00 EST.
Topics
Discourse
- Live stream posts on Discourse
- Discourse+MinIO for video hosting
- OBS video formats
- Potential for other media formats
- Fediverse actors on Discourse
- Based on OpenLDAP
- Google AdSense on Discourse
- Medusa for complex applications
Paper
- Live streams are quick and casual, paper will be more formalized
- Show LibreOffice document and Nextcloud integration
- Content outline
Kraken bot
- Evaluate progress on Gitea projects/milestones
- Explain the algorithm in MyStrategy.py
- Explain and demo Matrix logging
Chapters
- 0:00 Discourse
- 12:04 Medusa
- 17:00 LibreOffice
- 22:23 Kraken
Open-source audio recording and broadcasting
Live stream hosted on 2025-03-01 at 16:00 EST with Owncast
Chapters
0:00 Intro
1:27 Kraken bot update
8:14 Audio on Linux
14:51 ZynAddSubFX
17:49 Guitarix
21:10 Ardour
27:36 Output formats
Topics
- Kraken bot update
- Audio on Linux
- Jack vs ALSA
- QJackCtl
- Graph interface
- Connecting QJackCtl to OBS
- ZynAddSubFX
- Guitarix
- Ardour
- Output formats
- Publishing audio to MinIO
- Music streaming schedule
Matrix chat, Python logging, and Gitea actions
Live stream hosted on 2025-02-15 at 16:00EST with Owncast
Topics
Matrix
- Shoutout pdp72
- Gives utility to the services
- Feedback loop from viewers
- Self-hosting and federation
- Potential for impersonation
- MatrixError 502
- Show error in Element
- Synapse Helm chart
- Synapse logs
- Search results for the error
- Gitea issue
Kraken bot
- Demo Matrix logger
Gitea Actions
- Gitea actions Docker build
- What is Gitea Actions?
- Show in Kubernetes
- Walk through GitHub build-and-push example
- Gitea act runner errors and experiments
- Act runner labels
- Building Docker containers
- What is Gitea Actions?
Project planning
- Kraken bot deployment plan
- Update projects and milestones
- Request for feedback
Chapters
0:00 Matrix
15:00 Kraken bot
27:22 Gitea actions
45:44 Project planning
Building and deploying a Docker container to Kubernetes
Live stream hosted on 2025-02-22 at 16:00 EST with Owncast
Chapters
0:00 Docker build
14:41 Docker push
16:26 Ansible
23:37 Kubernetes
Topics
- Docker
- Defining containers with Dockerfile
- Building containers
- Push containers to DockerHub
- Ansible
- Ansible role for Kraken bot
- Git submodules
- Kubernetes
- CronJob
- Pull policy (Always)
- Deploy
- CronJob
- Monitoring
- Kraken Pro dashboard
- Matrix
- Grafana
Scheduled GPUs on Kubernetes
Live stream hosted 2025-03-08 at 16:40 EST on Owncast
https://wiki.debian.org/VGAPassthrough
https://wiki.debian.org/NvidiaGraphicsDrivers
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
Chapters
0:00 Intro
6:55 VFIO
15:10 Kubernetes
30:47 Resource requests
Topics
- RTX A6000 vs Tesla T4
- History on Gitea
- Should be using discussions on Discourse
- GPU passthrough
- VFIO on Debian
- Virt Manager hardware
- NVIDIA drivers on guest
- Ansible automation
- Scheduled GPU
- NVIDIA container toolkit
- Containerd configuration
- NVIDIA Device Plugins
- NVIDIA GPU Operator
- NVIDIA container toolkit
- Taints and tolerances
- Requesting a service
- Disk pressure issue
LocalAI on Kubernetes
Live stream hosted on 2025-03-15 at 16:00EST with Owncast
Chapters
0:00 Intro
7:06 LocalAI on K8s
21:03 Content pipelines
Topics
- Audio issues from last stream
- NVIDIA RTX A6000 update
- LocalAI on Kubernetes
- Content pipelines
- Upcoming stream schedule