Run Docker-Selenium as a Kamal Accessory

July 28, 2025


The task: To scrape a javascript-heavy web page you will need a web browser to load the dynamic page into. To automate the browser, you will need something like Puppeteer or Selenium. We opted for the selenium-webdriver gem with Google-chrome running in headless mode. It was useful to install the chrome dev package locally for developing and testing. However running this way in production wont cut it. The Rails App server will grind to a halt after some hours when it eventually runs out of memory. ... Read more

Migrate to Kamal to deploy anywhere

March 29, 2024


How we successfully used Kamal to leave AWS Beanstalk and deploy anywhere. We were new to containers, so this was part of the learning curve as well. In Part 1 We simply wanted to replicate the example by DHH and use Kamal to deploy to a single server on Hetzner. Includes some errors we overcame. In Part 2 We added the pieces in preparation for deploying the product. The Gotchas are some errors we saw and how to fix them. ... Read more

Hugo website on GitLab Pages

August 6, 2017


How we created a static website with Hugo and hosted it on GitLab Pages with our custom domain secured with a SSL/TLS certificate, for free. With Hugo + GitLab Pages + Let’s Encryptyou get: Static website generator. Auto-deploy on checkin. Free hosting. Custom domain AND secured with SSL/TLS encryption. Free Let’s Encrypt certificate. Previously we had [setup our website on GitHub] (/post/hugo-website-on-githubpages/) but with one major drawback: Github Pages doesn’t currently support SSL/TLS certificates with a custom domain. ... Read more

Hugo website hosted on GitHub Pages

August 2, 2017


How we created a static website using Hugo and hosted it on GitHub Pages, for free. With Hugo + GitHub Pagesyou get: Static website generator. Auto-deploy on checkin. Free hosting. Custom domain (not secured with SSL/TLS encryption). With GitHub Pages your URL optionsare: Encrypted sub domain of GitHub Pages, for example: https://mygitname.github.io/mywebsite. Unencrypted custom domain, for example: http://mycustomdomain. If you want to use a custom domain and SSL/TSL encryption, consider using GitLab instead: see blog post [Hugo website hosted on GitLab Pages] (/post/hugo-website-on-gitlabpages/). ... Read more

© 2025 Keith P | Follow on Twitter | Git