mtizima/docker-rollout-action

GitHub ActionsからSSH経由でDocker Compose サービスをゼロダウンタイム デプロイするアクション

インストール型ツール自由に使える · MITDevOps・インフラShell難易度
420 保存
0フォーク0Issue

中辛 の解説

Node.js やエージェント不要で、Bash と SSH だけで動作します。マイグレーション実行、イメージ取得、コンテナ更新、ポストデプロイ処理まで 1 つの SSH セッションで完結します。ヘルスチェックとコネクションドレイニング対応で、デプロイ中のリクエスト喪失をゼロに抑えられます。設定は YAML で簡潔です。

こんなリポジトリです

こんなときに便利です

  • 本番環境への安全なデプロイ自動化、ダウンタイムなしで新バージョンに切り替え
  • マイグレーション実行とデプロイの同時実施、デプロイ失敗時の自動ロールバック
  • リクエスト喪失ゼロの達成、接続ドレイニングと健全性チェックによる確実な切り替え

主な機能

ゼロダウンタイムデプロイ、健全性チェック付き自動ロールバックマイグレーション、プリデプロイ・ポストデプロイフック対応セキュアなレジストリ認証、ホストキーピン留め、機密情報保護

ほかとの違い

docker-rollout プラグインとコネクションドレイニング機構により、Kubernetes 不要でも本番環境レベルのゼロダウンタイムデプロイと自動ロールバックを実現しています。

このリポジトリの作り方

はじめてですか? むずかしくありません — 上から順にたどれば、自分の環境で動かして味見できます。

準備するもの

  • Docker Compose v2 プラグイン搭載の Docker
  • Bash 4.4 以上
  • curl または wget(docker-rollout インストール用)
  • SSH ユーザーが docker グループに属していること
  • リバースプロキシ(Traefik、nginx-proxy、Caddy など)

すぐに始める

  1. リポジトリをチェックアウトします
git clone <repository-url>
cd <repository>
  1. SSH ホストキーを取得し、GitHub Secrets に登録します
ssh-keyscan -p 22 your.server
  1. ワークフロー YAML で docker-rollout-action を設定します
- uses: mtizima/docker-rollout-action@v1
  with:
    host: ${{ secrets.SSH_HOST }}
    user: deploy
    ssh-key: ${{ secrets.SSH_KEY }}
    known-hosts: ${{ secrets.SSH_KNOWN_HOSTS }}
    project-dir: /opt/myapp
    services: web
  1. ローカルテストを実行します(オプション)
bash test/run-local.sh
  1. GitHub Actions ワークフロー内で本アクションを実行します(自動)

ギット飯トライで味見

入れるのが面倒で少し不安だったなら — 安全スキャンからインストールまで、ターミナル一行で終わります。

ターミナルに貼り付ければ、ギット飯の安全スキャン → 隔離フォルダへ clone → インストール → 実行方法の案内まで自動です。はじめてでも大丈夫 — この一行だけです。

npx gitbap-try mtizima/docker-rollout-action

Node.js さえあれば、インストールなしで動きます · ギット飯トライとは? →

スター推移 · 7日

427日間の増加数を計算するための比較データが不足しています

確認日時

使いやすさ · まねしやすいか

サンプル評点 34/100
  • ゆるいライセンス
  • テストあり
  • サンプル集
  • 最近の更新
  • AGENTS.md
  • llms.txt
  • テンプレート

最近の更新あり · 2026 年に作成

「DevOps・インフラ」 こういうリポジトリを毎週受け取りませんか?

毎週月曜の朝、選んだ一膳だけ。広告なし · いつでも解除。

自分のリポジトリですか? README にギット飯バッジを貼る
[![깃밥](https://www.gitbap.com/badge/mtizima/docker-rollout-action.svg)](https://www.gitbap.com/r/mtizima/docker-rollout-action)
Claude からそのまま使う — ギット飯のつなぎ方

ギット飯を Claude につなぐと、こうしたリポジトリを Claude・Cursor・Codex から直接さがして試せます。

方法 ① コネクタ URL

Claude の設定 → コネクタにこのアドレスを貼り付け。

https://www.gitbap.com/api/mcp
方法 ② プラグイン(試用まで)

プラグインを入れると /gitbap-trending·/gitbap-try のスラッシュコマンドで、その場でリポジトリを試せます。Claude Code で下の 2 行を順に実行してください。

/plugin marketplace add jakeparkcolde/gitbap-cowork
/plugin install gitbap-cowork@gitbap
つなぎ方をくわしく →

AI が README をもとに要約しました · 原文を見る