Dockerfile の設定に問題はありませんが、ENTRYPOINT コマンドを実行するとエラーが発生するのはなぜでしょうか? コンテナは起動するとすぐに終了しました。 理由が見つかるまで、たくさんの情報を調べて長い間考えました。 COPY命令によりrun.shがコンテナにコピーされます。しかし、ローカルマシンはWindowsであり、デフォルトの改行文字が\nであるため、コピー後に実行することはできません。 解決策は簡単です。ファイル形式を LF に切り替えるだけです。 補足知識: docker でコンテナを起動すると、CMD によって呼び出される sh スクリプトの if コマンドが予期しないシンボル if[[ を報告します。 解決策 最近、Dockerfile でイメージを作成しました。コンテナを起動するために、CMD で sh スクリプト (start.sh) が呼び出されました。docker run で起動したところ、起動に失敗しました。docker logs container ID を実行したところ、次のエラーが見つかりました: Unexpected symbol if [[ 外部 Linux システムで start.sh を直接実行することに成功しました。docker exec を介してコンテナに入り、コンテナ内でエラーなしで start.sh を呼び出しました。コマンドで起動する必要のあるすべてのプログラムが正常に起動しました。 スクリプトを直接実行すると問題ないのですが、docker run を経由するとエラーが発生してしまい困惑しています。 start.shのエラーコードセグメントは次のとおりです。 if [[ -e /home/dc/testnn-aaa.zip ]];then rm -rf /home/testnn-aaa 解凍 -q -o -d /home testnn-aaa.zip echo "zip の解凍が完了しました" それ以外 echo "dc zip が存在しません" フィ 確認して比較したところ、私の start.sh にもエラー文の前に if 文があるのにエラーが報告されないため、2 つの場所の違いは最初の if が単一の [] を使用していることであることがわかりました。コードを [] に変更すると成功します。変更内容は次のとおりです。
docker CMD/ENTRYPOINT が sh script: not found/run.sh: を実行する問題を解決する上記の記事は、エディターがあなたと共有した内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。 以下もご興味があるかもしれません:
|
今日もとても実践的な事例です。名前を聞くだけで高度で難しそうですよね?今日はカルーセル画像の真髄を簡...
この記事では、検証コード機能を実装するためのvue+spring bootの具体的なコードを例として...
Docker Hub公式サイト1. Pythonミラーを検索するdocker 検索 python 2...
rpmコマンドがソフトウェアのインストールに使用するパラメータはどれですか: -i rpm コマンド...
ベースイメージベースイメージには 2 つの意味があります。他のイメージに依存せず、ゼロから構築します...
目次序文文章1. 終了1.1 クロージャとは何ですか? 1.2 クロージャの特性1.3 クロージャを...
imgタグは画像を導入しますreactは実際にはjsリーダー関数を介してページをレンダリングするため...
目次序文一般的な方法1. 親コンポーネントを介して子コンポーネントの発行イベントをリッスンしてpro...
遭遇した落とし穴私は午後中ずっと、uni-app で scss を使用する際の落とし穴を解決すること...
今日、ディスクアラーム例外を受け取りました。50G ディスクが爆発しました。分析と解決のプロセスは次...
MySQL データベース インデックスが B+ ツリーを使用する理由をさらに分析する前に、データ構...
01. コマンドの概要dirname - ファイル名からディレクトリ以外のサフィックスを削除しますd...
以前作成されたデータベースの ogg プロセスは、発見されるまでの約半月間ダウンしていました。起動で...
目次デコレータパターンの紹介TypeScript のデコレータデコレータの使用デコレーターファクトリ...
CSS を使用して 3D フォト ウォールを作成します。具体的なコードは次のとおりです。 <!...