今日、Dockerfile を使用してイメージを作成したときに問題が発生し、イメージの実行後にコンテナが自動的に終了しました。 開始コマンド:
実行後、docker psを使用してdockerコンテナが終了したことを確認します。 情報を検索したところ、この問題は複雑ではないことがわかりました。その理由は、Docker コンテナがバックグラウンドで実行される場合、フォアグラウンド プロセスが必ず存在するためです。 解決: 1. 実行中のプロセスをフォアグラウンドで開始します。例: nginx nginx -g "daemon off;" tomcat ./catalina.sh run 2. フォアグラウンドで実行できる tail、top などのプログラムを使用します。ログ ファイルを出力する場合は、特に tail が推奨されます。 DockerfileにENTRYPOINT /opt/tomcat7.0/bin/startup.sh && tail -F /opt/tomcat7.0/logs/catalina.outを追加します。 追加知識: docker pullで取得したTomcatはログを生成しなかったため、手動でtocmat dockerfileファイルを作成し、ログが生成されることを確認しました。 1. dockfileファイルとその説明は次のとおりです。 openjdk:8-jre から メンテナー 環境変数 JAVA_HOME /docker-java-home 環境変数 CATALINA_HOME /opt/tomcat 環境変数 PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$CATALINA_HOME/scripts #タイムゾーン RUN echo "Asia/Shanghai" > /etc/timezone mv /etc/localtime /etc/localtime_bak を実行します。 実行 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #トムキャット 環境 TOMCAT_MAJOR 8 環境変数 TOMCAT_VERSION 8.5.35 wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.41/bin/apache-tomcat-8.5.41.tar.gz && \ を実行します。 tar -zxvf apache-tomcat-8.5.41.tar.gz && \ rm apache-tomcat*.tar.gz && \ mv apache-tomcat* ${CATALINA_HOME} chmod +x ${CATALINA_HOME}/bin/*sh を実行します。 chmod 777 ${CATALINA_HOME}/logs/ を実行します。 chmod 777 ${CATALINA_HOME}/webapps/ を実行します。 #ユーザー名とパスワードをadminに設定する tomcat-users.xml /opt/tomcat/conf/ を追加します。 #リモートアクセス ADD context.xml /opt/tomcat/webapps/manager/META-INF/ 環境変数 LANG zh_CN.UTF-8 #ポートEXPOSE 8080を開く # Tomcatを起動する ワークディレクトリ /opt/tomcat/bin CMD ["catalina.sh","実行"] 注意: このDockerは外部ファイルを参照する必要があります 詳細はgithubをご覧ください 2. Dockerfileコンパイルコマンド
3. コマンドを実行する docker run -d -p 8080:8080 --name tomcat8 -v /opt/docker-tomcat/logs/:/opt/tomcat/logs/ -v /opt/docker-tomcat/webapps/:/opt/tomcat/webapps/ -v /opt/docker-tomcat/context.xml:/opt/tomcat/webapps/manager/META-INF/context.xml -v /opt/docker-tomcat/tomcat-users.xml:/opt/tomcat/conf/tomcat-users.xml --privileged=true zyj/tomcat docker run コンテナが自動的に終了する問題に対する解決策は以上です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: vue3で注意すべき2つのポイントを詳しく解説:セットアップ
補足<br />HTML について何も知らず、HTML の始め方がまだわからない場合は、...
Nginx を使用して Tomcat9 クラスターを構築し、Redis を使用してセッション共有を実...
1. 何ですかCSS アニメーションは、CSS を使用して拡張マークアップ言語 (XML) 要素をア...
一部の Web ページは大きく見えなくても開くのに非常に時間がかかる場合があります。一方、他の We...
1. コマンドの紹介userdel (ユーザー削除) コマンドは、ユーザー アカウントと関連ファイル...
1. 何ですかRefs 、コンピューターでは Resilient File System (ReF...
目次MySQL 制約操作1. 非ヌル制約2. ユニーク制約3. 主キー制約4. 外部キー制約5. カ...
この記事では主にvue-routerのmatchedをベースにしたbreadcrumb機能を紹介し、...
目次変数意味があり発音しやすい変数名を使用する同じ型の変数には同じ語彙を使用する検索可能な名前を使用...
1. VMwareのダウンロードとインストールリンク: https://www.jb51.net/s...
この記事では、HTTP プロトコルのリファラーのメタデータ パラメータの提案について説明します。この...
目次1. 使用方法1. 基本的な使い方2. 2番目のパラメータ - フィルター3. 3番目のパラメー...
この記事では、ドロップダウンテーブルの複数選択と検索を実現するためのvue+elementuiの具体...
Windows サーバーでデータベース データを定期的にバックアップする場合は、Windows タス...
span タグは HTML ウェブページを作成するときによく使用されますが、このタグの使い方がよくわ...