Deployment
also: release, go live, production rollout
Deployment is the process of moving software from a development environment to production, making it available for end users. It includes installation, configuration, and activation of applications on target systems.
Deployment encompasses all steps required to release software into a live environment where it serves actual users. This includes copying files to servers, applying configuration settings, managing dependencies, running migrations, and starting services.
In Linux contexts, deployment often uses automation tools like systemd service files, container orchestration platforms (Kubernetes), or configuration management systems (Ansible, Puppet). For example, deploying a web application might involve: building a Docker image, pushing it to a registry, pulling it on production servers, and starting containers with proper environment variables.
Deployment strategies vary: blue-green deployments maintain two identical production environments and switch between them; rolling deployments gradually replace old instances with new ones; canary deployments release to a small user subset first to catch issues early.