2017-09-28 7 views
1

Nix-builtドッカー画像をタールボール形式で実行しようとしています。ドッカーでdocker load -i <path>とそれに続くdocker runが問題なく動作します。今、私はArtifactoryするtarballをアップロードしたとのようなものでK8S上の画像を実行しようとしています:kubectlタールボール画像を実行中

$ kubectl run foo-service --image=<internal Artifactory>/foo-service/foo-service-latest.tar.gz 

しかし、私が見るすべては次のとおりです。

NAME     DESIRED CURRENT UP-TO-DATE AVAILABLE AGE 
foo-service   1   1   1   0   2h 

から画像をロードすることは可能ですK8の(遠隔の)タールボール?はいの場合、そうするコマンドは何ですか?

答えて

2

クーベルネットで直接行う方法はありません。

レジストリにdocker load、その後docker pushを行う(あなたがKubernetesでprivate registryをホストまたは公共のものを使用することができます)、そのkubectl run後にすることができます。

Minikubeには、ローカル開発用のレジストリアドオンもあります。

+0

あなたの答えに全面的に同意しますが、思考実験として、 '-v/var/run/docker.sock'と[initContainers](https:/)を使用してOPが' docker load ' /kubernetes.io/docs/concepts/workloads/pods/init-containers/) –

+0

これは興味深い考えです!一般に、ローカルストレージにある場合には、tarballをinitコンテナに配送するという問題があります。 –

+0

関連するtarballから画像をロードできる 'docker'コマンドがありますか?あるいは、それをカールし、パイプを 'ドッカーロード 'にする必要がありますか? – adelbertc

関連する問題