7

私は、複数の環境を持つ弾性ビッグストークアプリケーションを実行しています。この特定のアプリケーションは、Webサービスをホストするドッカーコンテナをホストしています。Dockerrun.aws.jsonを使用してCLI deployコマンドを使用してelasticbeanstalkにデプロイ

新しいバージョンのアプリケーションを環境にアップロードして展開するには、Webクライアントを経由して[Upload and Deploy]をクリックし、ファイルオプションから最新のDockerrun.aws.jsonファイルを選択します個人的にホストされているコンテナの最新バージョンを参照します。アップロードとデプロイメントは正常に動作し、問題は発生しません。

自分や他の人が簡単に展開できるように、CLIを使用してDockerrun.aws.jsonファイルをアップロードして展開したいと考えています。 cli eb deployコマンドを特別な設定なしで使用すると、アプリケーション全体を圧縮してホストに送信する通常のプロセスが発生し、失敗します(Dockerrun.aws.jsonファイルの読み込みのみが必要であると判断できません)。

私は、.elasticbeanstalk/config.ymlファイルを使ってアップロードされたものを制御するためのドキュメントを見つけました。

deploy: artifact: Dockerrun.aws.json

ファイルがアップロードされており、実際のインスタンスの最初のバッチに正常に展開した後、常にインスタンスの第二セットに展開するために失敗します。

この構文を使用します。

障害エラーが味のある:「コンテナが予期せず終了しました...」

誰もが説明、または単一ドッキングウィンドウコンテナアプリケーションをデプロイするためにCLIを使用するための標準的なアプローチへのリンクを提供することはできますか?

答えて

1

をだから、私がconfig.ymlとについて記載された方法が正しかったことが判明します。私が部分的に成功した展開を見せていたのは、以前に稼動していたホスト上のドッカーコンテナがEBによって停止されていなかったからです。

私が起こっていたEBは、代わりに私がSIGTERMに応答しなかった走っていたので、それだけで座るより一般的なsudo docker stop $CONTAINER_ID

特定のコンテナの

sudo docker kill --signal=SIGTERM $CONTAINER_IDようなものを送信していることだったと思いますそこ。 SIGKILLを使ってローカルでテストしたところ、(明らかに)正しく停止してしまいましたが、SIGTERMだけでは止めませんでした。

問題は展開方法ではなく、EBが生成した出力と私の誤解が混乱していました。

0

リンクを求めてきたので、私は最初にelasticbeanstalk cliを使ってドッカーを正常にテストし、展開するためのリンクを提供しています。これは同様にあなたを助けている場合

親切に参照してください。https://fangpenlin.com/posts/2014/11/25/running-docker-with-aws-elastic-beanstalk/

+0

良い記事 - 多くの役立つ情報私は前にそれに遭遇していなかった。 –

+2

リンクが無効です。 – neverfox

+0

正しいリンクは次のとおりです。https://fangpenlin.com/posts/2014/11/25/running-docker-with-aws-elastic-beanstalk/ –

関連する問題