ホームページ > 運用・保守 > Docker > Docker のコンテナ時刻とホスト時刻が同期していない場合はどうすればよいですか?

Docker のコンテナ時刻とホスト時刻が同期していない場合はどうすればよいですか?

WBOY
リリース: 2022-03-08 15:57:36
オリジナル
8846 人が閲覧しました

方法: 1. 「docker run -name-v」コマンドを使用して、ホストのローカル時間を共有します。 2. 「docker cp /etc/localtime:container ID/etc/」を使用します。 localtime」コマンドを使用して、ホストのローカル時刻をコピーします。

Docker のコンテナ時刻とホスト時刻が同期していない場合はどうすればよいですか?

このチュートリアルの動作環境: linux7.3 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。

Docker のコンテナー時刻とホスト時刻が同期していない場合の対処方法

2 つのタイムゾーンを統一する必要があります。

共有ホストのローカルタイム (方法 1)

コンテナ作成時に起動パラメータを指定し、ローカルタイム ファイルをコンテナにマウントし、時刻が確実に一致するようにします。両方で使用されるゾーンは一貫しています。

docker run --name <name> -v /etc/localtime:/etc/localtime:ro ....
ログイン後にコピー

ホストの現地時間をコピーする (方法 2)

docker cp /etc/localtime:【容器ID或者NAME】/etc/localtime
ログイン後にコピー

完了後、date コマンドで現在時刻を確認します。

ただし、コンテナ内で実行されているプログラムの時刻は更新されない場合があります。たとえば、コンテナ内で実行されている MySQL サービスは、時刻を更新した後に SQL で MySQL の時刻を確認することで見つけることができます。

select now() from dual;
ログイン後にコピー

、時間は変わっていません。

この時点で、mysql が変更された時刻を読み取ることができるように、mysql サービスを再起動するか、Docker コンテナを再起動する必要があります。

カスタム dockerfile を作成する (方法 3)

dockerfile ファイルを作成します。実際には、コンテンツはありません。ファイルの時間形式とタイム ゾーンをカスタマイズするだけです。画像。

FROM redis
 
FROM tomcat
 
ENV CATALINA_HOME /usr/local/tomcat
 
#设置时区
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
  && echo &#39;Asia/Shanghai&#39; >/etc/timezone \
ログイン後にコピー
保存後、docker build コマンドを使用して、使用するイメージを生成します。

推奨される学習: 「

docker ビデオ チュートリアル

以上がDocker のコンテナ時刻とホスト時刻が同期していない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート