私が働いているところで内部的に使用される小さなウェブサイト(Ruby/Sinatra)を開発しています。 (単純に、いくつかのソースデータを集めてレポートを生成します)DockerとCI/CD - 最終展開のステップは何ですか?
私はDockerを使ってデプロイしたいのですが、私の開発環境で動作する設定をしたいのですが、私は "production (私たちはJenkinsを使用しています)。
私はDockerを使用した展開ワークフローについて多くの記事を読んだことがありますが、それらはすべて「停止」してからDockerレジストリに画像をプッシュするようです。欠落しているように見えるのは、そのイメージを取得して実際にアプリケーションを更新する方法です。
すべてのアプリケーションは異なる可能性がありますが、次のステップは何ですか?私はChef、Puppet、Ansibleのようなさまざまなフレームワークを知っていますが、私の質問は本当に - どのようにCI/CDパイプラインに組み込むのですか?例えば。ジョブがプロダクションサーバに変更を「プッシュ」するか、プロダクションサーバでJenkinsスレーブを実行してサーバ上で直接ジョブを実行する必要がありますか?
Davidさんありがとうございます。あなたは「私はドッカーを引っ張る」と言うとき、それは手作業のステップですか?それともジェンキンスの仕事ですか?後者の場合、ジェンキンスの仕事は何を引き起こしますか?あなたのパイプラインの一部ですか? –
ああ、BTW - 私はあなたが再起動ポリシーを含むドッカーを構成できると理解しています。 https://blog.codeship.com/ensuring-containers-are-always-running-with-dockers-restart-policy/ systemdの 'docker run'は不要かもしれませんか? –