Questions tagged [deployment]

A series of activities that makes a program available for use (usually in test or production environments)

Deployment consists in a series of activities needed to get a program available for use outside a development environment (for example on web sites, PCs, smartphones and/or tablets).

At a high level, deployment activities need to:

  • compile the program in a suitable packaging format;
  • distribute the program to the final environment (e.g. via the Internet, an app store or CDs);
  • install dependencies (usually libraries, runtimes and application servers);
  • configure the target environment (e.g. where the database is or runtime parameters of the application server).

A deployment can be done in several ways according to the program type, for example:

  • to deploy a web application written in Java we can add JARs to web containers;
  • to deploy a desktop application on Windows we can create a setup program and burn it to CDs;
  • to deploy an application to a cloud environment (like Heroku or Windows Azure) we can use ad-hoc programs or widely known programs like git that trigger a series of operations on the server side;
  • to deploy an application to an app store we may need to send the application to the store owner for approval. If the application is approved then the store owner will publish the new version, making it available to the users;
  • a deployment may require to distribute specially configured virtual machines with the right version of software and dependencies.

There are many challenges in deployment revolving around two main themes:

  • to ensure that programs exhibit the same behavior in production as they do in testing and development. To achieve this, usually there are several test environments (beyond development) in which the software is deployed and tested thoroughly before being released in the production environment. is the strategy of deploying to a subset of users to detect production-only errors with minimal user impact.
  • to be able to rollback to a previous stable version in case the current version behaves erratically. The deployment environment may help by providing some facilities to retain previous versions and install them when needed. is a deployment strategy which enables fast, robust release and rollback.

Frequently Asked Questions

People often ask about these topics:

22585 questions
7
votes
1 answer

How do I best deploy Entity Framework migrations to a web farm

I have an application that uses Entity Framework code first migrations where the application is deployed on two servers both using the same database. Now I have a simple database update where a table and the EF model has a new column/property. I…
Jojje
  • 703
  • 1
  • 7
  • 10
7
votes
2 answers

Jenkins guide needed for build, deploy, provision and rollback, keeping 5 releases

I am pretty new to Jenkins, and have some sort of understanding but need guidance further. I have a PHP application on a Git repo, that uses Composer, has Assets, has user uploaded Media files, uses Memcache/Redis, has some Agents/Workers, and has…
Pentium10
  • 190,605
  • 114
  • 394
  • 474
7
votes
4 answers

How can I deploy my .NET app to Amazon EC2?

I have a .NET Windows service and a .NET Web Application that I would like to deploy to my Amazon EC2 Windows 2008 instances. At this point, all I need to do is to copy the zipped files across to the EC2 box and remote desktop to the EC2 instance…
Khash
  • 2,406
  • 3
  • 30
  • 55
7
votes
8 answers

How to run a Qt Program without Qt itself being installed?

I have written a program with Qt5.3.1 and run it on my development machine where it works fine. I copied all necessary .dll files into the folder where my .exe is. These…
D4rth B4n3
  • 1,198
  • 2
  • 12
  • 25
7
votes
1 answer

Deploy a Docker image without using a repository

I'm building a Docker image on my build server (using TeamCity). After the build is done I want to take the image and deploy it to some server (staging, production). All tutorials i have found either push the image to some repository where it can…
tillda
  • 16,950
  • 16
  • 48
  • 69
7
votes
1 answer

Capistrano could not locate Gemfile error on application deployment

I'm trying to deploy my Rails application to production server and I decided to deploy it to DigitalOcean using this guide + RVM. To deploy I use following command: cap production deploy However, it fails at some part requiring gemfile. Here's the…
7
votes
2 answers

Can I deploy SQL Server Express with my desktop application just like builtin database?

Can I deploy SQL Server Express with my desktop application just like builtin database? Because I don't want my client to set up separately SQL Server Express! Is it easy to integrate SQL Server Express into my desktop application ?
MemoryLeak
  • 7,036
  • 22
  • 80
  • 127
7
votes
2 answers

Automatic applications deployment

I want to automate applications/roles/features deployment (unattended) on Windows 2012 R2 Infrastructure, this project needs many hours of programming, this is why i'm asking here. I want to deploy the following applications and roles : Active…
Adeel ASIF
  • 2,924
  • 9
  • 24
  • 41
7
votes
1 answer

Deploying an Umbraco site using Visual Studio

I'm almost finished with my first Umbraco site and i've been looking through these forums as well as the ourumbraco.org forums to try and find a definitive guide as to how to publish an Umbraco site to a live staging area however, as I have found so…
jezzipin
  • 3,880
  • 12
  • 43
  • 85
7
votes
1 answer

Access the StackTrace when deploying in Release mode

I'm not entirely sure if the StackTrace does not work correctly when deploying in release mode, however, we want to log all the exceptions so we can make bug tracking easier when deploying, and of course, deploying in debug mode is not an option.…
Carlo
  • 24,728
  • 29
  • 124
  • 174
7
votes
2 answers

Mage.exe deployment problems

I have a config file that needs changed on a per-server basis, so that once a server has our software installed on it, the config file for a client installer is set up to match that server's particular settings, and then copied to a public folder on…
Nathan Wheeler
  • 5,726
  • 2
  • 26
  • 47
7
votes
6 answers

Automatic Deployment Resources

I know enough to know that we need to get our application to deploy with a single user action. However, I don't know: What are some good tools to use in a .NET shop? How do you manage config changes for each of your environments? Can someone point…
7
votes
3 answers

Replace deployment on wildfly via HTTP API

We would like to replace an existing deployment of our app.war with curl. The post below gives a nice way to deploy a war file. This works well as long as there is no war file deployed with the same name. It fails, however, if there is already a…
bertolami
  • 2,836
  • 2
  • 22
  • 40
7
votes
3 answers

How to publish ASP.NET Web API without Visual Studio?

How can I publish ASP.NET Web API without Visual Studio? There is an external server, where must be only binaries or created project. If I publish with the studio on localhost to the local IIS - no problem. But I need now publish it to the remote…
user2402179
7
votes
1 answer

Add a *new* DestinationBinding for a site to a package using MSDeploy

I'm using a staging model with MSDeploy to deploy a couple of our sites to a web farm. The sites are configured in IIS on the staging boxes only, and then MSDeploy is used to build the target web servers from scratch. The staging box uses its own…
Andras Zoltan
  • 40,853
  • 11
  • 98
  • 156