2つのコンテナを持つKubernetesデプロイメントを宣言しました。1つはローカルで構築され、もう1つはプライベートレジストリからプルする必要があります。
const appImage = new docker.Image("ledgerImage", {
imageName: 'us.gcr.io/qwil-build/ledger',
build: "../../",
});
const ledgerDeployment = new k8s.extensions.v1beta1.Deployment("ledger", {
spec: {
template: {
metadata: {
labels: {name: "ledger"},
name: "ledger",
},
spec: {
containers: [
{
name: "api",
image: appImage.imageName,
},
{
name: "ssl-proxy",
image: "us.gcr.io/qwil-build/monolith-ssl-proxy:latest",
}
],
}
}
}
});
私が実行するpulumi up
と、ハングします-これは、という苦情のために発生していYou don't have the needed permissions to perform this operation, and you may have invalid credentials
ます。を実行すると、この文句が表示されますkubectl describe <name of pod>
。ただし、docker pull us.gcr.io/qwil-build/monolith-ssl-proxy:latest
実行すると問題なく実行されます。私は再会しましたgcloud auth configure-docker
、そしてそれは助けになりませんでした。
https://github.com/pulumi/pulumi-cloud/issues/112を見つけましたが、リモート画像ではなくローカル画像を対象としていることを示唆する引数がdocker.Image
必要なようですbuild
。
プライベートレジストリからイメージをプルするにはどうすればよいですか?
編集:
必要なSSLプロキシを構築するためのローカルdockerfileがあることがわかりました。私は新しいImage
を宣言しました
const sslImage = new docker.Image("sslImage", {
imageName: 'us.gcr.io/qwil-build/ledger-ssl-proxy',
build: {
context: "../../",
dockerfile: "../../Dockerfile.proxy"
}
});
そして、画像参照をDeployment
正しく更新しました。ただし、まだ認証の問題が発生しています。
ランニングpulumi destroy --yes && pulumi up --skip-preview --yes
は私が必要としていたものであることがわかりました。私は奇妙な一貫性のない状態にあったと思いますが、これは現在修正されています。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加