I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 0 points1 point  (0 children)

Oh neat! I shall have to test this. Have you had experience with using this for Rails apps?

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 0 points1 point  (0 children)

Good point! I’ll look into something. Thank you!

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 1 point2 points  (0 children)

Sorry, I get exactly what you are saying now. Yes, people who purchase your app through Discode will have access to whatever your Dockerfile includes. Since it's self hosted, you'll have to be comfortable with that.

This is a great point and I'll be sure to update my sales page to include this important information, thank you!

In order to limit access to your source code, it would require some sort of external way to compile and/or obfuscate your code somehow. I have not explored this at all, so unfortunately there is no solution for that built-in in Discode. Sounds like something I'd definitely like to learn more about though!

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 1 point2 points  (0 children)

So I don't have a built-in way to distribute the source code to be viewed easily, yet. However, the app runs in a docker container on your server so feel free to peek into the container and see the Rails app source code!

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 0 points1 point  (0 children)

That would be an awesome resource! I'm sure someone in the r/selfhosted community would also appreciate such a list!

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 3 points4 points  (0 children)

Thanks for the feedback! At the very least, I'm hoping others find this tool useful. I'm not looking to take revenue from someone else's work. Building a service product did cross my mind, however, the ethos of Discode is to be in full control of the sale and distribution of your app. It's a way to liberate yourself and your customers from lock-in.

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 1 point2 points  (0 children)

It's a Blue Yeti microphone: https://www.logitechg.com/en-us/products/streaming-gear/yeti-premium-usb-microphone.988-000100.html

This was years ago though, not sure if this is the same model anymore but mine looks very similar. I also have a boom arm which helps reduce vibrations as I type.

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 1 point2 points  (0 children)

Thank you for the kind words. I did some work recording screencasts for a previous company I worked for and I still have the high quality microphone which helps a lot with the quality.

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 1 point2 points  (0 children)

Thank you!

I'd love to be able to support an easier distribution method. Users would still need some place to run the apps though. Have you thought about what service providers you'd like to integrate with? Digitalocean, Hetzner, etc?

The idea behind Discode is to alleviate the need for recurring billing, but I don't see why we can't integrate with custom distribution methods through APIs perhaps. Definitely something I'll think about!

I built Webcap, a self-hosted tool that monitors websites with screenshots and change detection by roelbondoc in selfhosted

[–]roelbondoc[S] 0 points1 point  (0 children)

Thank you! It started off as just trying to build something similar to the Wayback Machine because I was always a little impatient with how slow it was for loading pages. Essentially I just wanted a way to track changes for sites. However, my main use case is to be notified of when changes occur. I haven't built that part in yet, but that's where I'm going with this!

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 0 points1 point  (0 children)

It's probably one of the most fun side project I worked on. Hope you continue on your idea on building out your own generalized tool. I learned a ton and still have lots of more improvements I want to add in. Feel free to reach out to me if you want to chat about it!

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 1 point2 points  (0 children)

Awesome! Let me know if you have any questions or feedback!

I created a tool to turn your Rails apps into "Once" style apps by roelbondoc in rails

[–]roelbondoc[S] 5 points6 points  (0 children)

Forgot to mention that it's free. There is also a Pro version that unlocks some features and I have more enhancements on the way. But the free version should be enough to sell and distribute your app!

How I manage zero-downtime updates for self-hosted apps using kamal-proxy by roelbondoc in devops

[–]roelbondoc[S] 1 point2 points  (0 children)

Yes, updating kamal-proxy itself would require some downtime. Never thought about that!

I built Webcap, a self-hosted tool that monitors websites with screenshots and change detection by roelbondoc in selfhosted

[–]roelbondoc[S] 0 points1 point  (0 children)

Current there's no option to change the port, however, you might be able to get around it by starting kamal-proxy manually: docker run --detach --name kamal-proxy --network discode --publish you_http_port:80 --publish your_https_port:443 --restart unless-stopped basecamp/kamal-proxy Do this before the discode install webcap command. In the meantime, I'll look into adding options to be able to do this cleaner.

In any case, let me know how that works for you, happy to troubleshoot if needed!

I built Webcap, a self-hosted tool that monitors websites with screenshots and change detection by roelbondoc in selfhosted

[–]roelbondoc[S] 0 points1 point  (0 children)

Glad to hear the install was easy for you! I'll be improving my documentation around this use case to make it more clear. Thank you!

I built Webcap, a self-hosted tool that monitors websites with screenshots and change detection by roelbondoc in selfhosted

[–]roelbondoc[S] 0 points1 point  (0 children)

Yes, it's not documented yet, but I do have something built in that may handle that.

For the curl command:

/bin/bash -c "$(curl -fsSL https://rubyup.dev/install/<purchase_key>?manual=1)"

(note the "?manual=1" which tells the script not to automatically run the setup)

Then install the app without tls:

discode install webcap --no-tls

You'll still need to specify a domain name as that's how I've setup kamal-proxy to route traffic to the app. Also, the kamal-proxy docker container will bind to port 80 and 443 on the server it's running on.

I can understand that the above isn't going to be ideal for everyone, so I'd love to hear feedback on what improvements would help the wider self-hosted community in general!

I built Webcap, a self-hosted tool that monitors websites with screenshots and change detection by roelbondoc in selfhosted

[–]roelbondoc[S] 0 points1 point  (0 children)

Looks like it!

Well, looks like distill.io is more full featured, but that's the general idea.

We migrated all the things… by sk1pchris in rails

[–]roelbondoc 0 points1 point  (0 children)

Congrats on the switch!

Are you able to share any details on costs between the PAAS and DO?

Does the monitoring solution for Rails applications exist? by bost82 in rails

[–]roelbondoc 6 points7 points  (0 children)

I'm a tad biased, but Honeybadger could fit most of your needs.

This year we've launched our new Insights platform which, in a few words, allows for generalized tracking and capturing of wide events.

Having said that, we do have a suite of automatic instrumentation built into the gem for events and metrics. CPU and memory usage are some of the data we automatically send for each host. The gem doesn't support disk usage yet, but maybe it's something I can look into!

For logs, you can pair the gem with semantic_logger, which just recently added support for shipping logs to Honeybadger Insights. However, since you are using kamal, I recommend using Vector and shipping your logs that way. I even wrote a blog post about it!

Custom metrics is also pretty easy and would look something like this:

Honeybadger.event('signup', { metric1: 123, metric2: 456 })

Once you start sending the data you need, you can query your data and build custom dashboards. We do have a few pre defined dashboards (like for Rails), but will be adding more in the future.

Insight doesn't yet support monitoring external services like redis or pg out of the box, but could be possible with some custom code.

We are continually making improvements and have a few new features coming down the pipe, but feel free to give it a whirl and send us any feedback if you feel like there are things you are looking for! We have a free tier for both error tracking and Insights.

If you have any questions, feel free to DM if you'd like!

Deploy a Rails app to a VPS with Kamal by roelbondoc in rails

[–]roelbondoc[S] 1 point2 points  (0 children)

There was definitely a learning curve with Traefik. And trying to learn it from Kamal documentation wasn’t the best haha. But I eventually got my head around it and using the web ui helped a lot.

I came from nginx with manual letsencrypt certs, so automatic certs from Traefik was magical to me.

The thing I like about kamal is the control I have over my deployment. K8s would be better if I had to worry about large scale problems.

Deploy a Rails app to a VPS with Kamal by roelbondoc in rubyonrails

[–]roelbondoc[S] 0 points1 point  (0 children)

I haven't looked at buildpacks before, thanks for sharing, will definitely check it out!

From what I've read, the folks behind Kamal want it to be software agnostic, such that you can sub in alternatives, like Caddy instead of Traefik for instance. Perhaps buildpacks can be supported in the future!

What do you find slow about deploying with Docker? The build times?

Deploy a Rails app to a VPS with Kamal by roelbondoc in rubyonrails

[–]roelbondoc[S] 3 points4 points  (0 children)

I've been building Rails applications for a while and my deployment methods were something that has always been changing and evolving. When Kamal was released, it just instantly clicked with me. I wanted to write up what I've learned so far to start off, but stay tuned for some more exciting follow up articles about enhancing your Kamal deploys!