Ember & nginx docker deployment with multi-stage builds

Introduction At work we use docker as the virtualization technology of choice to perform our project's deployments. We follow a microservices architecture that allows us to do rapid development & testing, quickly trying new ideas and iterating on new functionality using a modular approach, choosing the best language/framework that…

Understanding HTML terminology

Introduction I know, I know. "But Esteban, this article would have been useful 20 years ago, now it is a little outdated to say the least". I cannot disagree with that, but this kind of posts serve more as a reminder to me, and also perhaps to satisfy…

Passing arguments to Dockerfiles

Introduction When using docker as our virtualization software of choice to deploy our applications, sometimes we might want to build an image that depends on a variable parameter, for example when building images from a script and you have a changing deployment folder when constructing it. Using the ENV keyword…

Sed tricked me!

Introduction Today I had some time free at work since I am between projects and I wait for some additional information, and I took advantage of it to help a coworker that was new to Ember.js. For some reason all the calls to the backend (a Virtuoso Database) failed.…

My experience in JSCONF Belgium 2017.

This Thursday 29th June the Jsconf.be conference was celebrated in the beautiful city of Brugge, and I had the chance of going there! I had already taken a look at the speakers and I was interested in at least four talks so it was more than worth going. The…

Types of dependencies in NPM.

Introduction When we start a new javascript project and we count on adding a minimal level of complexity to it, we will eventually need to make use of external libraries if we want to avoid writing every feature totally from scratch. For that matter, you can choose to take three…

Easy way to log network traffic from docker containers

Introduction Let's say that you are working on a project using docker and running several containers in the host network, or you have multiple containers leveraging the power of the docker-compose script and running concurrently sharing a single docker network. Now for instance, imagine that you experience some slowness while…

Minimal working setup Rails 5 API + ActiveAdmin

First of all add the ActiveAdmin and the Devise gems. Devise is needed because ActiveAdmin will use it as the authentication mechanism. Gemfile: gem 'devise', '> 4.x' gem 'activeadmin', github: 'activeadmin' We install the gems: bundle install Then we modify several files in order to adapt the Rails…

Ember.run.later and setTimeout comparing scenario.

In the Ember internals (Backburner) it can be found that Ember.run.later basically calls setTimeout() under the hood, but respecting the firing order by which other timeouts were added into the queue. import Ember from 'ember'; export default Ember.Controller.extend({ appName: "Timers comparison", init: function() { this.…