The Most Preferred Sports Trends in America

This blog is an attempt to optimize the 40-maps-and-charts dataset from MakeoverMonday. The aim is to make the visualizations more comprehensible and understandable. For my final data visualization…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




Dockerization

The hardest part of turning a program I had written into a Docker image was remembering the names of the commands I needed to write in the DockerFile for it to work. Fairly high praise for any process related to web development, where usually a developer’s hardest job is trying to align the existing code to work with whatever system it is being pushed too. Or worse, trying to align their system to whatever code they pulled into it. The avoidance of that problem by having each Docker image run off of what amounts to a miniature OS is its biggest strength.

My experience with Docker is simple, I used it once to push a very basic Machine Learning system onto the Amazon Web Service. Now I recently used it once more to bring an old project to a custom domain I set up. Both deployments went through without any major troubles. Setting up the Docker file was more involved for the more recent project, as it had to run on the web rather than acting like storage for ML systems. The open endedness provided by the DockerFile struck me as interesting. You define exactly how the Docker image runs when a container is built from it. It places a-lot of responsibility onto the developer to properly construct it, and if it is being shared anybody the developer has to make sure that the image runs solely on the execution of the DockerFile. Furthermore this open endedness causes each projects DockerFile to be almost exclusively unique to that project, since Docker expects you to define each little step on the way to properly running the image and these steps will change depending on what the program is and what it does. There is no copy-pasting DockerFiles wholesale if you are working on your own project here. However with this style of deployment comes a whole ton of flexibility. Docker could potentially be used to trade databases between locations or it could be used to create standardized ‘test-suites’ so that programmers who work on different machines have the same baseline when testing their code. The comparison that comes to mind is ‘Github but it has a pseudo programming language.’ It also makes me think ‘What if Docker had flow-control logic?’ and I shiver.

Docker is a great tool for any developer. I would recommend gaining at least a passing understanding of what it is and how it works. You never know if someday you need to send someone your project or receive a project from someone else. Even sharing the same project between two different systems you yourself have complete control of would be greatly simplified by Docker, even if the simplification comes from the fact that you don’t need to adjust the second system to run the project.

Add a comment

Related posts:

Digital and Offline Scrapbooking Can Go Together

A new way to use online and offline tools separately and together for scrapbooking can increase your scrapbooks’ enjoyment. Start with a digital copy.

Best banquet hall in North Delhi

One of the best wedding locations in North Delhi is a banquet hall. We manage a wide range of corporate events in addition to birthday parties, weddings, pre-wedding rituals, wedding receptions, and…

See a map of 3D coverage in Google Earth

Google Earth is one of the world's most comprehensive 3D maps out there. In addition to global satellite and terrain coverage, over the past several years we've been adding highly detailed 3D imagery…