Zakku-Spot.com

気になる情報のリサーチブログ - Reserch blog of information you care about -

[レビュー]MySQLイメージをDockerイメージレジストリにpushしてみる

6月 20, 2023
0 0
Read Time:30 Second

 先日、ローカルのMySQLイメージを元にして、DockerのSwarmクラスター上にデプロイしてみた時に、以下のワーニングが表示されました。

(ワーニング(抜粋))
 image mysql8.0.33-image:latest could not be accessed on a registry to record its digest. Each node will access mysql8.0.33-image:latest independently, possibly leading to different nodes running different versions of the image.

 これについては、仕様上、Docker Swarmでは、サービスを複数のノードで実行する場合、各ノードが同じイメージの同じバージョンを使用するようにするために、イメージのデジェストをレジストリに記録する、という仕様になっているそうです。(これにより、異なるノード間で異なるイメージバージョンが実行されることを防ぐことができるわけです)

 しかし、ワーニングによると、指定したイメージ「mysql8.0.33-image:latest」のデジェストをレジストリに記録することができなかった、ということです。(その結果、各ノードは独立してイメージにアクセスし、異なるノードで異なるイメージバージョンが実行されてしまう可能性があるらしいです)

 このエラーを解決するために、次のいずれかの手順を行う予定です。

(1)イメージをレジストリにプッシュ

 イメージをDockerイメージレジストリにプッシュして、各ノードがアクセスできるようにします。プライベートレジストリを使用している場合は、正しい認証情報を提供する必要があります。

(2)イメージをローカルノードにロード

 各ノードにイメージをロードすることで、レジストリに依存せずに実行できます。以下のコマンドを使用してイメージをロードします。

 > docker image load -i mysql8.0.33-image.tar

 上記のコマンドを実行する前に、イメージファイル mysql8.0.33-image.tar をローカルに配置しておく必要があります。

 この結果については別途記事に記録する予定です。

Happy
Happy
0 %
Sad
Sad
0 %
Excited
Excited
0 %
Sleepy
Sleepy
0 %
Angry
Angry
0 %
Surprise
Surprise
0 %

Average Rating

5 Star
0%
4 Star
0%
3 Star
0%
2 Star
0%
1 Star
0%

コメントを残す