デプロイ 【deploy】 デプロイメント / deployment
概要
デプロイ(deploy)とは、配備する、配置する、展開する、配置につく、などの意味を持つ英単語。IT分野では、開発したソフトウェアを実際の運用環境に配置・展開して実用に供することを指す場合が多い。ソフトウェアを構成するプログラムなどをパッケージなどにまとめ、使用環境に導入可能な状態に組み立てる工程(リリース)、実際の使用環境に展開して導入する工程(インストール)、プログラムを起動して所定の設定や手続きを行い操作や要求を受け付けられる状態にする工程(アクティベート)などを含む。
広義には、配備済みのプログラムなどの修正・更新・入れ替え(アップデートおよびアップグレード)、更新などのための稼働停止(ディアクティベート)、必要なくなったソフトウェアの撤去(アンインストール)など、運用開始後の工程を含む場合がある。
サーバ環境へのデプロイ
一般的に単にデプロイという場合は、サーバを運用して情報システムやネットサービスなどを提供している環境で、開発や更新の済んだソフトウェア(の新しいバージョン)を運用環境であるサーバに展開する工程や作業を指すことが多い。
プログラムの複製や移動、導入、起動などを一つずつ手入力で操作する場合もあるが、修正や更新のたびに手作業でデプロイするのは手間がかかり作業ミスの原因ともなるため、シェルスクリプトなどに手順を記述して一括実行したり、専用のデプロイツールなどを用いることがある。
開発工程の一貫としてデプロイ作業を組み込み、プログラムの修正やテストが終わると管理用ソフトウェアによって実運用環境に自動的・継続的に展開する手法を「継続的デプロイ」(CD:Continuous Deployment)という。「継続的インテグレーション」(CI:Continuous Integration)と組み合わせて「CI/CD」と呼ばれることも多い。
サーバ環境でのデプロイでは、停止時間の短縮や問題発生時の対処などを行いやすくするため、「ローリングアップデート」(rolling update)や「カナリアリリース」(canary release)、「ブルーグリーンデプロイメント」(blue-green deployment)などの手法が用いられることがある。サーバを停止せずにデプロイすることは「ホットデプロイ」(hot deployment)という。