Engineering

Our engineering is underpinned by principles that celebrate both the integrity of code and the ambition to innovate. This manifesto champions excellence, advocates for the adoption of cutting-edge technologies, and fosters an environment of continuous intellectual growth.

Docker for development

Docker is the preferred way to set up your development environment in Mashup Garage projects. With Docker, we're able to achieve parity across different development environments, no matter what their choice of OS's are.

Getting started

Docker is available for Linux, MacOS, and Windows.

MacOS Docker for Mac is best installed with Homebrew and Homebrew Cask. For other ways to install on MacOS, see Install Docker for Mac in Docker's docs.

brew cask install docker # Install Docker open /Applications/Docker.app # Start Docker Tip: Avoid Docker Toolbox and boot2docker. These are older packages that have been ceded by Docker for Mac.

Arch Linux Docker is available in Arch Linux's repositories. Also see Docker in ArchWiki.

sudo pacman -Syu docker # Install Docker sudo pacman -Syu docker-compose # Install docker-compose sudo systemctl enable docker # Start Docker on system startup (optional) sudo systemctl start docker # Start Docker now # Add your user to the `docker` group so you can use Docker without sudo sudo usermod -a -G docker $(whoami)

Ubuntu docker.io is available from the Ubuntu repositories (as of Xenial).

# Install Docker sudo apt install docker.io sudo apt install docker-compose # Start it sudo systemctl start docker If the docker.io package isn't available for you, see Get Docker CE for Ubuntu for an alternative.

Windows

Install Windows Subsystem for Linux and choose Ubuntu as your guest OS. Jem reports that this article has instructions that worked for him: Setting up Docker for Windows and WSL (nickjanetakis.com). Previously, we recommended to install Docker as you normally would on Ubuntu (see above) and these instructions... Adrian reports that this method makes docker-compose throw errors on his machine.

Other OS's

For other operating systems, see: https://www.docker.com/community-edition#download

Verifying if it works

If everything works, you should have the following commands available:

$ docker info Containers: 0 Running: 0 Paused: 0 ...

$ docker-compose --version docker-compose version 1.21.2, build unknown

Starting Docker

If you get an error like the one below, you might need to start the Docker daemon.

$ docker info Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

To start the Docker daemon, it probably needs one of these commands

open /Applications/Docker.app # macOS sudo systemctl start docker # Arch, Ubuntu, CentOS

Enabling on startup

For Arch Linux, Ubuntu and CentOS, this will enable auto-starting of the Docker service:

sudo systemctl enable docker
Next: Design Playbook

Connect.

Mashup Garage, a premier software development team, specialises in crafting exceptional products for startups and enterprises. With expertise in React, Elixir/Phoenix, and Ruby on Rails, we deliver solutions that meet your unique needs. Our mission is to bring value backed by decades of technical expertise and global co-founding experience.

What do you need help with?

Build a project

Build a team

Consult

Speak to someone

Expect a guaranteed response from us in 1-2 business days.

United Kingdom

London

Islington, London

+44 738 777 3405

LDN

Philippines

Manila

3F Topy IV Building, 3 Economia Road, Bagumbayan, Quezon City, 1110

+63 917 3084089

MNL