背景node-schedule スケジュール タスク ライブラリを使用して、毎日午前 7 時に自動的にメールを送信し、メールにその日の日付が付与されるスクリプトを作成しました。 質問メールは午前 7 時ではなく午後 3 時に受信されました。タイムゾーンの設定によるものだと思います。 問題分析と解決策調査の結果、node-schedule ライブラリはタイムゾーンの選択をサポートしていないため、デフォルトでは世界標準時間 UTC に従って送信されることが判明しました。通常渡す時間は、中国の上海タイムゾーンである CST であり、8 時間異なります。 let j = schedule.scheduleJob('name',"0 7 * * *",'アジア/上海', function () { console.log("タスクを実行"); すべてのデータと送信メールを取得します。 }); 新たな問題時刻を変更した後、新たな問題が発生しました。メールで取得された時刻は今日の時刻ではなく、昨日の時刻でした。 問題分析と解決策考えてみると、コード内に時間を取得する場所が2つあります。1つはスケジュールされたタスクライブラリによって渡される電子メールを送信する時間であり、もう1つはスクリプトで現在の時間を取得することです。 今日 = 新しい Date() とする 今日のログを印刷したので、ログを確認してください docker logs -f [コンテナID] # 今日:2021-11-12T23:00:00.106Z 午前7時に送信したメールが、本日前日の23:00に受信されたことが判明しました。これも8時間違います。次のコマンドを使用してdockerコンテナに入り、時間を確認します $ docker exec -it [コンテナID] sh # コンテナに入ると、前面は#になります # 日付を入力して時刻を表示します # 土 11月13日 05:05:31 UTC 2021 これは確かに UTC 世界標準時であり、つまり、電子メールの送信時刻は実際に戻されていますが、コードが実行されたときに取得される時刻は現在の世界標準時です。 docker cp /etc/localtime [コンテナID]:/etc/ 上記のようにコンテナ内の時間を再度確認し、CST に戻されていることを確認します。問題はないはずです。 これで、docker コンテナのタイムゾーン エラー問題に関するこの記事は終了です。docker タイムゾーン エラーに関するその他の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Bootstrap 3.0 学習ノート グリッドシステムの原則
>>: MySQL データベースのインデックス順序の詳細な説明
1》ウェブデザインが得意であること2》Webページのデザイン方法を知る3》計画する4. SEOを理解...
目次序文1. Nginx+Tomcat 2. Nginxサーバーを構成する3. Tomcatアプリケ...
目次問題の説明Vueの動的コンポーネントとはアプリケーションシナリオの説明実装手順ステップ 1 (新...
序文LINUX では、定期的なタスクは通常、cron デーモン プロセス [ps -ef | gre...
この記事では、ネイティブ JS を使用して実装された実用的な Web ナビゲーション バー効果を紹介...
概要Nginx では変数を使用して設定を簡素化し、設定の柔軟性を向上させることができます。すべての変...
序文これは古くからの要望ですが、オンラインで解決策を探している人はまだ多く、特に検索結果の上位にラン...
原因: java.sql.SQLException: 列の文字列値が正しくありません: '\...
場合によっては、ベースイメージに特定の依存関係をインストールする必要があります。Dockerfile...
CSS を使用する場合は、DOCTYPE (ドキュメント タイプ定義) を記述することを忘れないでく...
Linux ファイルシステム一般的なハードディスクは上図のとおりです。各ディスクは複数のトラックに分...
<br />友人と話し合っていたとき、フレームワークのレイヤー設計の中で最も核となるのは...
一般的に、MySQL はデフォルトでさまざまなストレージ エンジンを提供しており、次のように表示され...
まず、よくある質問は、ECMAScript と JavaScript の関係は何ですか? ECMAS...
目次ユースケースリアクティブAPI関連プロセス反応的なcreateReactiveObjectはレス...