So You Want To Be a Computer software Developer?: Docker and the ‘It works on my machine’ problem

So you developed an application on Apple iphone, but it’s buggy on Android and you never know what to do. Docker is the resource to relieve this big headache of software program enhancement.

Docker is a container process that functions as its personal tiny digital equipment, and doesn’t consider too a great deal pc processing ability. The system is an equalizer. The containers operate the identical way on any running system simply because the code operates in just the container.

Docker is to establishing apps what a variety two pencil is to the Scantron in a standardized check. In all those acquainted quality college exam, if 1 particular person was working with a guide pencil, the other was working with a pen and the other has quill plucked from an eagle dipped in ink they microbrew in their basement, there would be problems in registering the solutions. But with the correct tool, the machine can process anything properly.

Docker was utilised in the development of Code for Baltimore’s Bmore Responsive application. The backend code is at the rear of a shopper management device utilised by the Baltimore City Well being Section to contact senior residing facilities in the course of the Covid-19 pandemic.

This backend code can also be used and tailored to distinct apps that provider various needs and features in other metropolitan areas and departments, and Docker is the explanation. It normalizes advancement and creation environments, developing scalable options to software growth issues.

Code for Baltimore also has a breakdown for quick start off on its GitHub.

A docker container. (Courtesy of Jason Anton)

To illustrate the instructions, Jason Anton, a entire-stack developer with Owings Mills-centered software package business Bellese Technologies and task guide for Code for Baltimore delivered illustrations of commands in Docker.

Each and every gif below shows a command in the regular workflow in Docker following producing adjustments to code or if you are testing finished code in distinct functioning programs. The commands are for jogging code in the course of the tests and growth phase in an functioning method- neutral ecosystem.

docker ps

This will exhibit you currently working containers.

(Courtesy of Jason Anton)











docker-compose up

This will convey up your containers described in the docker-compose.yml file.

So You Want To Be a Computer software Developer?: Docker and the ‘It works on my machine’ problem

(Courtesy image Jason Anton)










docker-compose down

This will bring down your containers from that docker-compose file.

(Courtesy of Jason Anton)










docker prune

This deletes all containers, volumes, and networks from your system.

(Courtesy of Jason Anton)











In program improvement circles, “It operates on my device” protection is infamous. A method may possibly perform on a developer’s method, but not on some others who have unique environments.

Docker is the device Anton suggests to completely get rid of the “it will work on my machine” situation from your program progress undertaking.

Examine the initial edition of ‘So You Want to be a Software Developer: Variation regulate

Donte Kirby is a 2020-2021 corps member for Report for America, an initiative of The Groundtruth Project that pairs youthful journalists with neighborhood newsrooms. This place is supported by the Robert W. Deutsch Foundation. -30-