Skip to content
Homepage for Beyond Ludus & Dan Healy
Ruby HTML CSS JavaScript Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
bin
config
db
lib
log
public
test
tmp
vendor
.dockerignore
.gitignore
.ruby-version
Dockerfile
Dockerfile.prod
Gemfile
Gemfile.lock
README.md
Rakefile
config.ru
docker-compose.prod.yml
docker-compose.yml
docker-entrypoint.sh
package.json

README.md

README

This is a simple demonstration site I'm using to showcase some technologies, and also to publish my personal resume and portfolio.

This was deployed to Linode using Docker Swarm, after having evaluated the possibility of using Kubernetes. My takeaway from attempting to get this working in Kubernetes is that I found the manifests and server requirements too heavy weight for such a small project. I attempted to use some alternatives to reduce complexity, like ksonnet and Kontena, but mainly it felt like I was trading complexity in Kubernetes for even more esoteric domain complexity and not really gaining any overall simplification.

Those pain points would be worth dealing with in an environment that requires rapid scaling, high availability and all the bells and whistles, but for this demonstration I just felt it was a bit too much.

Some good blog posts I studied:

The web front end itself is built around:

  • Ruby 2.5
  • Rails 5
  • Bootstrap 4
  • Haml
  • Sass
  • Google fonts, FontAwesome, Devicon 2.0

Notes

  • Used rails generator option --skip-coffee
  • Customized Dockerfile, changed the ADD commands to COPY as per compose tutorial
  • Had to add additional whitelisted_ips: config.web_console.whitelisted_ips = ['172.16.0.0/12', '192.168.0.0/16']
  • Had to comment out test for Redis in the docker-entrypoint.sh
  • Had to modify the gemfile to use tzinfo-data always
You can’t perform that action at this time.