コンテナの起動時に Docker コンテナ内のアプリケーション サービスを自動的に起動する場合。 Dockerfile にサービス起動スクリプトを記述し、Dockerfile を使用してイメージを再構築するだけです。
サービスのセルフスタートスクリプトを書く (dockerd) #!/bin/bash # # # # chkconfig: 345 98 30 # 説明: tomcat プログラム。 # プロセス名: tomcat # ソース関数ライブラリ。 . /etc/rc.d/init.d/functions # ソースネットワーク構成。 #. /etc/sysconfig/ネットワーク プログラム = "tomcat" チェックプロセス() { chkret=`ps -ef |grep $prog |grep -v "grep" |wc -l` $chkretを返す } 始める() { cd /usr/local/tomcat/bin/ ./スタートアップ.sh echo "サービス $prog が開始されました!" } #/usr/sbin/nscd & /usr/sbin/sshd -D & [ 真 ] である間 する 172.18.3.179 のIPアドレス ping=`ping -c 3 $DNSIP|awk 'NR==7 {print $4}'` [[ $ping -eq "3" ]]の場合 それから 壊す フィ 睡眠3 終わり [ 真 ] である間 する チェックプロセス [[ $chkret -eq "0" ]]の場合 それから 始める #nscd -i ホスト それ以外 echo "サービス $prog は実行中です。" フィ 睡眠60 終わり 終了 0 Dockerfileの作成 tomcatから メンテナー liu "[email protected]" dockerd /etc/rc.d/init.d/ を追加します。 chmod 777 /etc/rc.d/init.d/dockerd を実行します。 環境変数JAVA_HOME /usr/local/jdk1.6.0_30 環境変数 PATH $JAVA_HOME/bin:$PATH ENV クラスパス .:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar コマンド /etc/rc.d/init.d/dockerd このうち、ADD はイメージの指定場所に同じディレクトリ内のスクリプトを追加し、ENV は Java 環境変数を設定します (非常に重要、この文がないと自己起動スクリプトは正常に実行できません)。CMD コマンドは 1 つだけ存在でき、コンテナの起動時にコマンドを実行するために使用されます。スクリプトでも構いません。 イメージの再構築 コンテナを開く docker run -d -h="s" –name="s" 新しいイメージ名 すると、Tomcatがすでに起動していることがわかりました 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: 64 ビット CentOs7 ソース コードのインストール mysql-5.6.35 プロセス共有
>>: Vue フォームのポストリクエストとサーブレットを組み合わせてファイルアップロード機能を実現する
チュートリアルシリーズMySQL シリーズ: MySQL リレーショナル データベースの基本概念My...
目次序文1. カプセル化の重要性2. どのようにカプセル化しますか? 1. 準備2. 梱包を開始する...
まず実装手順について説明します。最終結果 2. コードの実装HTML部分 <div class...
序文以前、defineProperty を紹介したとき、オブジェクトの変更のみを監視でき、配列の変更...
Web 開発では、チェックボックスは小さく、ユーザーにとって操作があまり便利ではないため、ユーザーが...
序文count 関数は、テーブルまたは配列内のレコードをカウントするために使用されます。count(...
コードをコピーコードは次のとおりです。 <html> <ヘッド> <ス...
まず、HTML タグのいくつかの特性を知っておく必要があります。 1. 「<keyword&g...
luaをインストールする http://luajit.org/download/LuaJIT-2.0...
最近、私はデザインには階層感覚が必要だと言っています。この階層感覚には、色の重ね合わせや要素の重ね合...
MySQLインストーラをダウンロードする公式ダウンロードアドレス: http://dev.mysq...
最近、MySQL 5.6 を導入しましたが、デフォルトでは MySQL はローカル サービスのみを許...
1. 公式5.0.3イメージを取得する [root@localhost ~]# docker pul...
目次モードパラメータハッシュ履歴ハッシュ履歴.push()ハッシュ履歴.replace()アドレスバ...
1. まず、移行サーバー上のデータ ファイルを見つけます。MySQL 5.7 とデフォルトのインスト...