{"id":17403,"date":"2017-06-16T12:29:01","date_gmt":"2017-06-16T09:29:01","guid":{"rendered":"https:\/\/www.webcodegeeks.com\/?p=17403"},"modified":"2017-06-16T12:29:01","modified_gmt":"2017-06-16T09:29:01","slug":"deployment-space-heading","status":"publish","type":"post","link":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/","title":{"rendered":"Where Is the Deployment Space Heading?"},"content":{"rendered":"<p>With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space is heading over the next couple of years.<\/p>\n<p>However, like any form of crystal ball-gazing, what we see happening in the future is only a prediction about what <em>we think<\/em> may come \u2014 even if that prediction is based on real-world evidence. But I\u2019m not alone in doing this. People far more well-known than I, most notably Bill Gates, do this on a regular basis.<\/p>\n<p>Despite that, I\u2019m still keen to share my thoughts on where I see the deployment space heading in the next few years. Have a read and tell me whether you agree or not. If you strongly disagree, please tell me why in the comments.<\/p>\n<h2>Continuous Delivery Will Be the Norm<\/h2>\n<p>If you\u2019re not too familiar with the term, <a href=\"https:\/\/continuousdelivery.com\/\">continuous delivery is<\/a>:<\/p>\n<blockquote><p>\u2026the ability to get changes of all types \u2014 including new features, configuration changes, bug fixes, and experiments \u2014 into production or into the hands of users safely and quickly in a sustainable way. Our goal is to make deployments \u2014 whether of a large-scale distributed system, a complex production environment, an embedded system, or an app \u2014 predictable, routine affairs that can be performed on demand.<\/p><\/blockquote>\n<p>Why use it? Stop and consider for a moment how complex, how sophisticated, and how demanding it can be to deploy software. Consider the multitude of components that underpin it.<\/p>\n<p>Speaking from personal experience, when I first started (back in 1999), all that it took to deploy a [web] application was to:<\/p>\n<ol>\n<li>Migrate any database schema changes I\u2019d made locally to the production server;<\/li>\n<li>Rsync the code to the production server;<\/li>\n<li>Reload the app in the browser.<\/li>\n<\/ol>\n<p>Not much could have been simpler. The application consisted of Apache with PHP and MySQL. There wasn\u2019t much that I had to do, nor that could go wrong.<\/p>\n<p>These days <em>everything\u2019s<\/em> different. There are database, caching, queueing, and log servers. On top of that, software is governed increasingly by complex and demanding legislation. So as well as the applications becoming more sophisticated, the rules that govern them are also growing in complexity.<\/p>\n<p>As a result, we need a process or architecture that allows for complex, sophisticated systems to be regularly built and deployed, one that both manages and reduces this complexity as much as possible.<\/p>\n<p>Consider <a href=\"https:\/\/martinfowler.com\/bliki\/ContinuousDelivery.html\">these five benefits of continuous delivery from Martin Fowler<\/a>, and I\u2019m sure you\u2019ll agree that CD is essential:<\/p>\n<ul>\n<li>Your software is deployable throughout its lifecycle.<\/li>\n<li>Your team prioritizes keeping the software deployable over working on new features.<\/li>\n<li>Anybody can get fast, automated feedback on the production readiness of their systems anytime somebody makes a change to them.<\/li>\n<li>You can perform push-button deployments of any version of the software to any environment on demand.<\/li>\n<\/ul>\n<p>Who wouldn\u2019t want these benefits?<\/p>\n<h2>Everything Will Be Automated<\/h2>\n<p>If there was one mantra, <em>automate all the things<\/em> would be it. By automating everything, processes are both well defined and repeatable. Following this logic, if processes are well defined, that means that they\u2019ve been thought about \u2014 in depth \u2014 for some time.<\/p>\n<p>So it follows by consequence that you know your software and its needs at an intimate level. Combine that with an array of tools that make automation easier than it\u2019s ever been, and you have 1) a recipe for regular, successful deployments and 2) something that people will adopt with a passion.<\/p>\n<p>It\u2019s not to say that people don\u2019t focus. But, I feel, up until now, there were valid excuses for a lack of automation. The options that were available took a lot of effort to use, whether because of education, time, cost, or a combination of all three.<\/p>\n<p>However, in more recent times, this is decreasingly the case. There are so many tools springing up and reaching a sufficient level of maturity that there\u2019s no reasonable excuse not to use them.<\/p>\n<p>These include open-source tools such as Rocketeer, Capistrano, Phing, Deployer, Forge, and Envoyer, as well as CI services like <a href=\"https:\/\/codeship.com\/\">Codeship<\/a> and solutions such as Docker, which provides a complete development-to-production workflow.<\/p>\n<p>Regardless of the tool you choose, it\u2019s hard to find one that\u2019s either immature or lacks an intuitive interface. Given that, the time to automate everything is well and truly here. The reasons for not automating all the things are gone.<\/p>\n<p>Then there are the benefits that automation brings. Automation breeds reliability, predictability, and security.<\/p>\n<p>When software can be built the same way each and every time, organizations can create software with confidence. Creating software with confidence leads to more predictable release cycles, greater visibility, and greater feedback. This in turn leads to software that is more likely to have a higher level of quality and customer satisfaction.<\/p>\n<p>Then there\u2019s the fact that automated builds encourage other best practices, such as testing. You could say the tipping point\u2019s been reached. What\u2019s more, the mindset in the developer community, at least the ones that I participate in, is sufficiently behind it.<\/p>\n<p>I\u2019m encouraged in this thinking because I\u2019ve seen what\u2019s happened when the tooling and mindset shift reached a critical mass previously, such as with testing. Once reached, the speed of adoption only increased until it became almost universally accepted.<\/p>\n<h2>Docker, Docker, Docker<\/h2>\n<p>This might be a controversial statement to make, but it\u2019s one that I\u2019m willing to put my money on. The reasons why are uniformity and simplicity.<\/p>\n<p>Let\u2019s explore those points in some further depth. A typical, even clich\u00e9d, response over the years when something would go wrong in a deployed application would be \u201cit works on my machine.\u201d While that may have been true, it never helped the user who was prevented from or who\u2019d lost an hour or more of work.<\/p>\n<p>To that end, a variety of solutions were created that sought to minimize the difference between all environments involved in a software solution, whether that was development, testing, staging, or production. Of those, some of the most notable are Vagrant, Chef, Puppet, Salt, and Ansible.<\/p>\n<p>However, even the simplest of these, Ansible, still requires effort, knowledge, and time to use effectively. Yes, they create idempotent environments, ones which can be versioned along with the code that they support. But they\u2019re still complex setups, and builds are both resource- and time-intensive.<\/p>\n<p>Contrast that with the solution \u2014 and model \u2014\u00a0that <a href=\"https:\/\/www.docker.com\">Docker<\/a> provides. Here\u2019s an example of a <code>docker-compose.yml<\/code> file for building a set of Docker containers to support a rudimentary application (you can see <a href=\"https:\/\/github.com\/settermjd\/docker-for-local-development\">the complete configuration on GitHub<\/a>).<\/p>\n<pre class=\"brush:php\">version: '2'\r\n\r\nservices:\r\n    nginx:\r\n        image: nginx\r\n        ports:\r\n            - 8080:80\r\n        volumes:\r\n            - .\/docker\/nginx\/default.conf:\/etc\/nginx\/conf.d\/default.conf\r\n        volumes_from:\r\n            - php\r\n\r\n    php:\r\n        build: .\/docker\/php\/\r\n        expose:\r\n            - 9000\r\n        volumes:\r\n            - .:\/var\/www\/html<\/pre>\n<p>Contrast that with an equivalent, well-structured Ansible configuration. I think you see where I\u2019m going with this. The Docker configuration is significantly smaller and less involved to both understand and to maintain.<\/p>\n<p>What\u2019s more, and as the presentation <a href=\"https:\/\/www.slideshare.net\/jpetazzo\/the-docker-ecosystem-and-the-future-of-application-deployment\"><em>The Docker ecosystem and the future of application deployment<\/em><\/a> points out, building environments, whether locally or remotely, with Docker is a lot faster than with virtual machines. It also avoids configurations that are (operating system) distribution- or language-specific.<\/p>\n<p>To be fair, in Docker\u2019s earlier days, there wasn\u2019t a clear path from development to production. But in recent years, as the adoption of Docker has increased, the toolchain has matured, and <a href=\"https:\/\/codeship.com\/features\/pro-aw?utm_source=google-cpc&amp;utm_medium=google_adwords_branded&amp;utm_campaign=google_adwords_branded&amp;utm_term=codeship%20docker&amp;utm_content=185526447078&amp;gclid=CKX79IjS3dICFTAz0wodTEgOzw\">the number of commercial vendors supporting it grows<\/a>, this lack of clarity is all but a thing of the past.<\/p>\n<p>Given that, I see Docker as a game changer for deployment in the years to come. It does have some detractors who have leveled valid criticism at it. But I see the foundation for these criticisms continuing to erode.<\/p>\n<h2>A Multitude of Vendors and Tools<\/h2>\n<p>If history is anything to go by, being able to sustain a multitude of vendors and tools shouldn\u2019t be the case. In most other industries, there\u2019s always an initial explosion of interest followed by an explosion of companies to support that interest.<\/p>\n<p>But gradually some players consume others until there are only a few players left. This holds true in mass media, shipping, auto-making, hardware, and even software in the earlier days. It wasn\u2019t all that long ago that companies such as Microsoft and Oracle were consuming any number of smaller companies, even if the synergies weren\u2019t there.<\/p>\n<p>But in this particular software niche, I don\u2019t see it holding true as it has previously. It\u2019s my firm belief that it cannot, primarily because of the enormous amount of variation and specialization of software being created.<\/p>\n<p>What\u2019s more, as software is not bound by the hard realities and costs of other industries, an almost unthinkable array and variety of software can be created. This software will have competing demands and needs and not fit into a one-size-fits-all model. Given that, I don\u2019t see how any one or even a small group of vendors could ever hope to cater to all of it. I\u2019m not saying that it won\u2019t happen, but I highly doubt that it would happen.<\/p>\n<p>Having said that, I do see a certain level of commoditization happening. I see vendors coalescing around key areas and specialties. I see there being a few key players in the relevant spaces, such as storage, deployment, logging, caching, queueing, etc.<\/p>\n<p>But I don\u2019t see a future where there\u2019s only a handful of vendors covering everything. While some companies have tried (and continue to try) to set the terms and conditions for how software is created, they\u2019ve never succeeded \u2014\u00a0not in the long term. Perhaps because software development came out of the hacker mindset or because software is so malleable.<\/p>\n<p>But software is also a tool to solve a need, and people will always have needs to solve. Those needs, while sometimes similar, will never be the same. Given that, there will always be a need for variety and diversity of solutions on offer.<\/p>\n<h2>In Conclusion<\/h2>\n<p>To sum up, these are my four predictions for the future of the deployment space. The software that we\u2019re writing (specifically in the web space) aren\u2019t simple pages with dates and copyright notices anymore. They\u2019re complex, often sophisticated applications that perform all manner of tasks.<\/p>\n<p>From tools such as <a href=\"https:\/\/www.zoho.com\/books\/\">Zoho Books<\/a> and <a href=\"https:\/\/www.freeagent.com\">FreeAgent<\/a>, which help us manage our clients and accounts, to <a href=\"https:\/\/uk.mytaxi.com\/hailo\">mytaxi<\/a> and <a href=\"https:\/\/www.lyft.com\">Lyft<\/a> for finding a ride, the software that we\u2019re writing is growing ever more complex, composed of any number of components and backend services.<\/p>\n<p>Given that, the complexity and demands on us to be able to deploy changes, bug fixes, and releases are also growing. Yet the available tools have also matured and refined over the years as well.<\/p>\n<p>It\u2019s for these reasons that I believe that the future of the deployment space is a combination of processes, techniques, and tooling to make our lives easier and less error prone.<\/p>\n<p>Do you agree or disagree? What does your crystal ball (or more important, your experience) tell you? Do you have some unique insights to share?<\/p>\n<p>This article wouldn\u2019t have been possible without the input from countless colleagues and friends across the wider software development community. So thank you to all those whom I bugged and hassled for their input.<\/p>\n<div class=\"attribution\">\n<table>\n<tbody>\n<tr>\n<td><span class=\"reference\">Reference: <\/span><\/td>\n<td><a href=\"https:\/\/blog.codeship.com\/where-is-the-deployment-space-heading\/\">Where Is the Deployment Space Heading?<\/a> from our <a href=\"http:\/\/www.webcodegeeks.com\/join-us\/wcg\/\">WCG partner<\/a>\u00a0Matthew Setter at the <a href=\"http:\/\/blog.codeship.com\/\">Codeship Blog<\/a> blog.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space is heading over the next couple of years. However, like any form of crystal ball-gazing, what we see happening in the future is only a prediction about what we &hellip;<\/p>\n","protected":false},"author":119,"featured_media":10356,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[305,217],"class_list":["post-17403","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops","tag-continuous-deployment","tag-docker"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Where Is the Deployment Space Heading? - Web Code Geeks - 2026<\/title>\n<meta name=\"description\" content=\"With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Where Is the Deployment Space Heading? - Web Code Geeks - 2026\" \/>\n<meta property=\"og:description\" content=\"With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/\" \/>\n<meta property=\"og:site_name\" content=\"Web Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webcodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2017-06-16T09:29:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Matthew Setter\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@settermjd\" \/>\n<meta name=\"twitter:site\" content=\"@webcodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matthew Setter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/\"},\"author\":{\"name\":\"Matthew Setter\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/b05e82f4b706b29d2bfb20134e3d2f35\"},\"headline\":\"Where Is the Deployment Space Heading?\",\"datePublished\":\"2017-06-16T09:29:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/\"},\"wordCount\":1906,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg\",\"keywords\":[\"Continuous Deployment\",\"Docker\"],\"articleSection\":[\"DevOps\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/\",\"name\":\"Where Is the Deployment Space Heading? - Web Code Geeks - 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg\",\"datePublished\":\"2017-06-16T09:29:01+00:00\",\"description\":\"With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space\",\"breadcrumb\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.webcodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DevOps\",\"item\":\"https:\/\/www.webcodegeeks.com\/category\/devops\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Where Is the Deployment Space Heading?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"name\":\"Web Code Geeks\",\"description\":\"Web Developers Resource Center\",\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.webcodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webcodegeeks\",\"https:\/\/x.com\/webcodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/b05e82f4b706b29d2bfb20134e3d2f35\",\"name\":\"Matthew Setter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/93462db49ad0350a33d70149761702068941d2e0c07150ae8c32df9512fc2bde?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/93462db49ad0350a33d70149761702068941d2e0c07150ae8c32df9512fc2bde?s=96&d=mm&r=g\",\"caption\":\"Matthew Setter\"},\"description\":\"Matthew Setter is a developer and technical writer. He creates web-based applications and technical content that engage developers with platforms, technologies, applications, and tools.\",\"sameAs\":[\"https:\/\/x.com\/settermjd\"],\"url\":\"https:\/\/www.webcodegeeks.com\/author\/matthew-setter\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Where Is the Deployment Space Heading? - Web Code Geeks - 2026","description":"With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/","og_locale":"en_US","og_type":"article","og_title":"Where Is the Deployment Space Heading? - Web Code Geeks - 2026","og_description":"With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space","og_url":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/","og_site_name":"Web Code Geeks","article_publisher":"https:\/\/www.facebook.com\/webcodegeeks","article_published_time":"2017-06-16T09:29:01+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg","type":"image\/jpeg"}],"author":"Matthew Setter","twitter_card":"summary_large_image","twitter_creator":"@settermjd","twitter_site":"@webcodegeeks","twitter_misc":{"Written by":"Matthew Setter","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#article","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/"},"author":{"name":"Matthew Setter","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/b05e82f4b706b29d2bfb20134e3d2f35"},"headline":"Where Is the Deployment Space Heading?","datePublished":"2017-06-16T09:29:01+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/"},"wordCount":1906,"commentCount":1,"publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg","keywords":["Continuous Deployment","Docker"],"articleSection":["DevOps"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/","url":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/","name":"Where Is the Deployment Space Heading? - Web Code Geeks - 2026","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg","datePublished":"2017-06-16T09:29:01+00:00","description":"With all the time I\u2019ve spent of late assessing different deployment options, it seemed pertinent to stop for a moment and see where the deployment space","breadcrumb":{"@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#primaryimage","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2016\/01\/docker-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.webcodegeeks.com\/devops\/deployment-space-heading\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.webcodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"DevOps","item":"https:\/\/www.webcodegeeks.com\/category\/devops\/"},{"@type":"ListItem","position":3,"name":"Where Is the Deployment Space Heading?"}]},{"@type":"WebSite","@id":"https:\/\/www.webcodegeeks.com\/#website","url":"https:\/\/www.webcodegeeks.com\/","name":"Web Code Geeks","description":"Web Developers Resource Center","publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.webcodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.webcodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.webcodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webcodegeeks","https:\/\/x.com\/webcodegeeks"]},{"@type":"Person","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/b05e82f4b706b29d2bfb20134e3d2f35","name":"Matthew Setter","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/93462db49ad0350a33d70149761702068941d2e0c07150ae8c32df9512fc2bde?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/93462db49ad0350a33d70149761702068941d2e0c07150ae8c32df9512fc2bde?s=96&d=mm&r=g","caption":"Matthew Setter"},"description":"Matthew Setter is a developer and technical writer. He creates web-based applications and technical content that engage developers with platforms, technologies, applications, and tools.","sameAs":["https:\/\/x.com\/settermjd"],"url":"https:\/\/www.webcodegeeks.com\/author\/matthew-setter\/"}]}},"_links":{"self":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/17403","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/users\/119"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/comments?post=17403"}],"version-history":[{"count":0,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/17403\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media\/10356"}],"wp:attachment":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media?parent=17403"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/categories?post=17403"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/tags?post=17403"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}