从azr注册表中提取ErrImagePull

时间:2018-02-16 21:55:35

标签: azure docker kubernetes minikube

我正在尝试使用minikube运行kubernetes。我在n azure容器注册表中有一些docker镜像。

我创建了一个这样的秘密:

kubectl create secret docker-registry private-repo-secret --docker-server=myregistry.azurecr.io --docker-username=myusername --docker-password=mypassword --docker-email=myemail@mydomain.com

我可以看到它在那里:

$ kubectl get secret         
NAME                  TYPE                                  DATA      AGE
default-token-x5xxh   kubernetes.io/service-account-token   3         17m
private-repo-secret   kubernetes.io/dockercfg               1         4m

在我的豆荚中:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: frontend
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: frontend
    spec:
      containers:
      - name: frontend
        image: myregistry.azurecr.io/myproject/frontend:0.0.5
      imagePullSecrets:
        - name: private-repo-secret

那么为什么我得到一个ErrImagePull说需要验证?

编辑: 这些凭证是正确的,它们在本地工作。 我使用了az acr credential show -n myregistry获得的2个密码中的一个。唯一的区别是,在我的本地json中,我只有auth属性,而不是用户名,密码和电子邮件。

如果我描述我的其中一个豆荚:

  Warning  Failed                 5m (x4 over 6m)   kubelet, ip-172-20-49-180.eu-central-1.compute.internal  Failed to pull image "myregistry.azurecr.io/myproject/frontend:0.0.5": rpc error: code = Unknown desc = Error response from daemon: Get https://myregistry.azurecr.io/v2/myproject/frontend/manifests/0.0.5: unauthorized: authentication required
  Normal   BackOff                5m (x6 over 6m)   kubelet, ip-172-20-49-180.eu-central-1.compute.internal  Back-off pulling image "myregistry.azurecr.io/myproject/frontend:0.0.5"
  Warning  FailedSync             1m (x25 over 6m)  kubelet, ip-172-20-49-180.eu-central-1.compute.internal  Error syncing pod

kubectl版本:

Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.0", GitCommit:"925c127ec6b946659ad0fd596fa959be43f0cc05", GitTreeState:"clean", BuildDate:"2017-12-15T21:07:38Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.6", GitCommit:"6260bb08c46c31eea6cb538b34a9ceb3e406689c", GitTreeState:"clean", BuildDate:"2017-12-21T06:23:29Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}

4 个答案:

答案 0 :(得分:2)

首先,使用以下命令登录您的docker注册表。

$ docker login DOCKER_REGISTRY_SERVER --username=DOCKER_USER --password=DOCKER_PASSWORD --email=DOCKER_EMAIL'.

这将生成一个配置文件。

$ ls -la ~/.docker/config.json
/home/shahriar/.docker/config.json

现在,使用此命令创建秘密。

kubectl create secret generic my-secret-name --type=kubernetes.io/dockerconfigjson --from-file .dockerconfigjson=/home/shahriar/.docker/config.json

你的秘密将会是这样的

apiVersion: v1
data:
  .dockerconfigjson: ewoJImF1dGh...l9Cn0=
kind: Secret
metadata:
  creationTimestamp: 2018-02-17T10:06:56Z
  name: my-secret-name
  namespace: default
  resourceVersion: "269"
  selfLink: /api/v1/namespaces/default/secrets/my-secret-name
  uid: 48f9f398-13ca-11e8-89c4-0800276cd577
type: kubernetes.io/dockerconfigjson

.dockerconfigjson看起来像这样

{
    "auths": {
        "https://index.docker.io/v1/": {
            "auth": "YWVyb2tp..XRlMDMzIw=="
        }
    },
    "HttpHeaders": {
        "User-Agent": "Docker-Client/17.11.0-ce (linux)"
    }
}

答案 1 :(得分:0)

好吧,这看起来是正确的,唯一的问题可能是错误的用户\密码,错误的acr名称或其他地方。您可以使用以下方法检查这些值:

kubectl get secrets/private-repo-secret -o yaml
echo "string from data/.dockerconfigjson" | base64 --decode

或者你可以简单地删除它们并从头开始创建

答案 2 :(得分:0)

我通过从这个yaml文件创建一个秘密来解决:

apiVersion: v1  
kind: Secret    
metadata:   
  name: private-repo-secret 
data:   
  .dockerconfigjson: <~/.docker/config.json encoded base64> 
type: kubernetes.io/dockerconfigjson

答案 3 :(得分:0)

您可以通过以下方式创建秘密:

<?xml version="1.0" encoding="UTF-8"?><process version="8.2.001"> <context> <input/> <output/> <macros/> </context> <operator activated="true" class="process" compatibility="8.2.001" expanded="true" name="Process"> <parameter key="logverbosity" value="init"/> <parameter key="random_seed" value="2001"/> <parameter key="send_mail" value="never"/> <parameter key="notification_email" value=""/> <parameter key="process_duration_for_mail" value="30"/> <parameter key="encoding" value="SYSTEM"/> <process expanded="true"> <operator activated="true" class="read_excel" compatibility="8.2.001" expanded="true" height="68" name="Read Excel" width="90" x="45" y="391"> <parameter key="excel_file" value="/Users/macbook/Desktop/ULS/Change Management in ULS/WASP_Requirements.xlsx"/> <parameter key="sheet_selection" value="sheet number"/> <parameter key="sheet_number" value="1"/> <parameter key="imported_cell_range" value="A1:B72"/> <parameter key="encoding" value="SYSTEM"/> <parameter key="first_row_as_names" value="false"/> <list key="annotations"/> <parameter key="date_format" value=""/> <parameter key="time_zone" value="SYSTEM"/> <parameter key="locale" value="English (United States)"/> <parameter key="read_all_values_as_polynominal" value="false"/> <list key="data_set_meta_data_information"> <parameter key="0" value="A.true.polynominal.id"/> <parameter key="1" value="B.true.polynominal.attribute"/> </list> <parameter key="read_not_matching_values_as_missings" value="true"/> <parameter key="datamanagement" value="double_array"/> <parameter key="data_management" value="auto"/> </operator> <operator activated="true" class="remove_duplicates" compatibility="8.2.001" expanded="true" height="103" name="Remove Duplicates" width="90" x="45" y="493"> <parameter key="attribute_filter_type" value="all"/> <parameter key="attribute" value=""/> <parameter key="attributes" value=""/> <parameter key="use_except_expression" value="false"/> <parameter key="value_type" value="attribute_value"/> <parameter key="use_value_type_exception" value="false"/> <parameter key="except_value_type" value="time"/> <parameter key="block_type" value="attribute_block"/> <parameter key="use_block_type_exception" value="false"/> <parameter key="except_block_type" value="value_matrix_row_start"/> <parameter key="invert_selection" value="false"/> <parameter key="include_special_attributes" value="false"/> <parameter key="treat_missing_values_as_duplicates" value="false"/> </operator> <operator activated="true" class="set_role" compatibility="8.2.001" expanded="true" height="82" name="Set Role" width="90" x="179" y="391"> <parameter key="attribute_name" value="A"/> <parameter key="target_role" value="id"/> <list key="set_additional_roles"> <parameter key="B" value="regular"/> <parameter key="A" value="id"/> </list> </operator> <operator activated="true" class="nominal_to_text" compatibility="8.2.001" expanded="true" height="82" name="Nominal to Text" width="90" x="179" y="493"> <parameter key="attribute_filter_type" value="all"/> <parameter key="attribute" value=""/> <parameter key="attributes" value=""/> <parameter key="use_except_expression" value="false"/> <parameter key="value_type" value="nominal"/> <parameter key="use_value_type_exception" value="false"/> <parameter key="except_value_type" value="file_path"/> <parameter key="block_type" value="single_value"/> <parameter key="use_block_type_exception" value="false"/> <parameter key="except_block_type" value="single_value"/> <parameter key="invert_selection" value="false"/> <parameter key="include_special_attributes" value="false"/> </operator> <operator activated="true" class="text:process_document_from_data" compatibility="8.1.000" expanded="true" height="82" name="Process Documents from Data" width="90" x="313" y="391"> <parameter key="create_word_vector" value="true"/> <parameter key="vector_creation" value="TF-IDF"/> <parameter key="add_meta_information" value="true"/> <parameter key="keep_text" value="true"/> <parameter key="prune_method" value="absolute"/> <parameter key="prune_below_percent" value="3.0"/> <parameter key="prune_above_percent" value="30.0"/> <parameter key="prune_below_absolute" value="2"/> <parameter key="prune_above_absolute" value="9999"/> <parameter key="prune_below_rank" value="0.05"/> <parameter key="prune_above_rank" value="0.95"/> <parameter key="datamanagement" value="double_sparse_array"/> <parameter key="data_management" value="auto"/> <parameter key="select_attributes_and_weights" value="false"/> <list key="specify_weights"> <parameter key="B" value="1.0"/> </list> <process expanded="true"> <operator activated="true" class="text:tokenize" compatibility="8.1.000" expanded="true" height="68" name="Tokenize" width="90" x="112" y="34"> <parameter key="mode" value="linguistic tokens"/> <parameter key="characters" value=".:"/> <parameter key="language" value="English"/> <parameter key="max_token_length" value="3"/> </operator> <operator activated="true" class="text:filter_stopwords_english" compatibility="8.1.000" expanded="true" height="68" name="Filter Stopwords (English)" width="90" x="112" y="136"/> <operator activated="true" class="text:transform_cases" compatibility="8.1.000" expanded="true" height="68" name="Transform Cases" width="90" x="112" y="238"> <parameter key="transform_to" value="lower case"/> </operator> <operator activated="true" class="wordnet:open_wordnet_dictionary" compatibility="5.3.000" expanded="true" height="68" name="Open WordNet Dictionary" width="90" x="313" y="391"> <parameter key="resource_type" value="directory"/> <parameter key="directory" value="/Users/macbook/Downloads/WordNet-3.0/dict"/> </operator> <operator activated="true" class="wordnet:stem_wordnet" compatibility="5.3.000" expanded="true" height="82" name="Stem (WordNet)" width="90" x="313" y="238"> <parameter key="allow_ambiguity" value="true"/> <parameter key="keep_unmatched_stems" value="true"/> <parameter key="keep_unmatched_tokens" value="true"/> <parameter key="work_on_type_noun" value="true"/> <parameter key="work_on_type_verb" value="true"/> <parameter key="work_on_type_adjective" value="true"/> <parameter key="work_on_type_adverb" value="true"/> </operator> <operator activated="true" class="wordnet:find_synonym_wordnet" compatibility="5.3.000" expanded="true" height="82" name="Find Synonyms (WordNet)" width="90" x="447" y="238"> <parameter key="use_prefix" value="false"/> <parameter key="synset_word_prefix" value="syn:"/> <parameter key="maximum_recursion_depth" value="1"/> <parameter key="multiple_meanings_per_word_policy" value="Take only first meaning"/> <parameter key="multiple_synsets_policy" value="Take only first synset per meaning"/> <parameter key="multiple_synset_words_policy" value="Take only first synset word"/> <parameter key="concatenation" value="Concatenate result per synset"/> <parameter key="keep_original_tokens" value="true"/> <parameter key="keep_unmatched_tokens" value="true"/> <parameter key="take_ID_instead_of_words" value="false"/> <parameter key="work_on_type_noun" value="true"/> <parameter key="work_on_type_verb" value="true"/> <parameter key="work_on_type_adjective" value="true"/> <parameter key="work_on_type_adverb" value="true"/> </operator> <connect from_port="document" to_op="Tokenize" to_port="document"/> <connect from_op="Tokenize" from_port="document" to_op="Filter Stopwords (English)" to_port="document"/> <connect from_op="Filter Stopwords (English)" from_port="document" to_op="Transform Cases" to_port="document"/> <connect from_op="Transform Cases" from_port="document" to_op="Stem (WordNet)" to_port="document"/> <connect from_op="Open WordNet Dictionary" from_port="dictionary" to_op="Stem (WordNet)" to_port="dictionary"/> <connect from_op="Stem (WordNet)" from_port="document" to_op="Find Synonyms (WordNet)" to_port="document"/> <connect from_op="Stem (WordNet)" from_port="dictionary" to_op="Find Synonyms (WordNet)" to_port="dictionary"/> <connect from_op="Find Synonyms (WordNet)" from_port="document" to_port="document 1"/> <portSpacing port="source_document" spacing="0"/> <portSpacing port="sink_document 1" spacing="0"/> <portSpacing port="sink_document 2" spacing="0"/> </process> </operator> <operator activated="false" class="concurrency:k_means" compatibility="8.2.001" expanded="true" height="82" name="Clustering" width="90" x="782" y="34"> <parameter key="add_cluster_attribute" value="true"/> <parameter key="add_as_label" value="false"/> <parameter key="remove_unlabeled" value="false"/> <parameter key="k" value="40"/> <parameter key="max_runs" value="10"/> <parameter key="determine_good_start_values" value="true"/> <parameter key="measure_types" value="BregmanDivergences"/> <parameter key="mixed_measure" value="MixedEuclideanDistance"/> <parameter key="nominal_measure" value="NominalDistance"/> <parameter key="numerical_measure" value="EuclideanDistance"/> <parameter key="divergence" value="SquaredEuclideanDistance"/> <parameter key="kernel_type" value="radial"/> <parameter key="kernel_gamma" value="1.0"/> <parameter key="kernel_sigma1" value="1.0"/> <parameter key="kernel_sigma2" value="0.0"/> <parameter key="kernel_sigma3" value="2.0"/> <parameter key="kernel_degree" value="3.0"/> <parameter key="kernel_shift" value="1.0"/> <parameter key="kernel_a" value="1.0"/> <parameter key="kernel_b" value="0.0"/> <parameter key="max_optimization_steps" value="100"/> <parameter key="use_local_random_seed" value="false"/> <parameter key="local_random_seed" value="1992"/> </operator> <operator activated="true" class="read_excel" compatibility="8.2.001" expanded="true" height="68" name="Read Excel (2)" width="90" x="45" y="85"> <parameter key="excel_file" value="/Users/macbook/Desktop/ULS/Change Management in ULS/WASP_Requirements.xlsx"/> <parameter key="sheet_selection" value="sheet number"/> <parameter key="sheet_number" value="2"/> <parameter key="imported_cell_range" value="A1:B1"/> <parameter key="encoding" value="SYSTEM"/> <parameter key="first_row_as_names" value="false"/> <list key="annotations"/> <parameter key="date_format" value=""/> <parameter key="time_zone" value="SYSTEM"/> <parameter key="locale" value="English (United States)"/> <parameter key="read_all_values_as_polynominal" value="false"/> <list key="data_set_meta_data_information"> <parameter key="0" value="A.true.polynominal.id"/> <parameter key="1" value="B.true.polynominal.attribute"/> </list> <parameter key="read_not_matching_values_as_missings" value="true"/> <parameter key="datamanagement" value="double_array"/> <parameter key="data_management" value="auto"/> </operator> <operator activated="true" class="remove_duplicates" compatibility="8.2.001" expanded="true" height="103" name="Remove Duplicates (2)" width="90" x="45" y="187"> <parameter key="attribute_filter_type" value="all"/> <parameter key="attribute" value=""/> <parameter key="attributes" value=""/> <parameter key="use_except_expression" value="false"/> <parameter key="value_type" value="attribute_value"/> <parameter key="use_value_type_exception" value="false"/> <parameter key="except_value_type" value="time"/> <parameter key="block_type" value="attribute_block"/> <parameter key="use_block_type_exception" value="false"/> <parameter key="except_block_type" value="value_matrix_row_start"/> <parameter key="invert_selection" value="false"/> <parameter key="include_special_attributes" value="false"/> <parameter key="treat_missing_values_as_duplicates" value="false"/> </operator> <operator activated="true" class="set_role" compatibility="8.2.001" expanded="true" height="82" name="Set Role (2)" width="90" x="179" y="85"> <parameter key="attribute_name" value="A"/> <parameter key="target_role" value="id"/> <list key="set_additional_roles"> <parameter key="B" value="regular"/> <parameter key="A" value="id"/> </list> </operator> <operator activated="true" class="nominal_to_text" compatibility="8.2.001" expanded="true" height="82" name="Nominal to Text (2)" width="90" x="179" y="187"> <parameter key="attribute_filter_type" value="all"/> <parameter key="attribute" value=""/> <parameter key="attributes" value=""/> <parameter key="use_except_expression" value="false"/> <parameter key="value_type" value="nominal"/> <parameter key="use_value_type_exception" value="false"/> <parameter key="except_value_type" value="file_path"/> <parameter key="block_type" value="single_value"/> <parameter key="use_block_type_exception" value="false"/> <parameter key="except_block_type" value="single_value"/> <parameter key="invert_selection" value="false"/> <parameter key="include_special_attributes" value="false"/> </operator> <operator activated="true" class="text:process_document_from_data" compatibility="8.1.000" expanded="true" height="82" name="Process Documents from Data (2)" width="90" x="313" y="85"> <parameter key="create_word_vector" value="true"/> <parameter key="vector_creation" value="TF-IDF"/> <parameter key="add_meta_information" value="true"/> <parameter key="keep_text" value="true"/> <parameter key="prune_method" value="absolute"/> <parameter key="prune_below_percent" value="3.0"/> <parameter key="prune_above_percent" value="30.0"/> <parameter key="prune_below_absolute" value="2"/> <parameter key="prune_above_absolute" value="9999"/> <parameter key="prune_below_rank" value="0.05"/> <parameter key="prune_above_rank" value="0.95"/> <parameter key="datamanagement" value="double_sparse_array"/> <parameter key="data_management" value="auto"/> <parameter key="select_attributes_and_weights" value="false"/> <list key="specify_weights"> <parameter key="B" value="1.0"/> </list> <process expanded="true"> <operator activated="true" class="text:tokenize" compatibility="8.1.000" expanded="true" height="68" name="Tokenize (2)" width="90" x="112" y="34"> <parameter key="mode" value="linguistic tokens"/> <parameter key="characters" value=".:"/> <parameter key="language" value="English"/> <parameter key="max_token_length" value="3"/> </operator> <operator activated="true" class="text:filter_stopwords_english" compatibility="8.1.000" expanded="true" height="68" name="Filter Stopwords (2)" width="90" x="112" y="136"/> <operator activated="true" class="text:transform_cases" compatibility="8.1.000" expanded="true" height="68" name="Transform Cases (2)" width="90" x="112" y="238"> <parameter key="transform_to" value="lower case"/> </operator> <operator activated="true" class="wordnet:open_wordnet_dictionary" compatibility="5.3.000" expanded="true" height="68" name="Open WordNet Dictionary (2)" width="90" x="313" y="391"> <parameter key="resource_type" value="directory"/> <parameter key="directory" value="/Users/macbook/Downloads/WordNet-3.0/dict"/> </operator> <operator activated="true" class="wordnet:stem_wordnet" compatibility="5.3.000" expanded="true" height="82" name="Stem (2)" width="90" x="313" y="238"> <parameter key="allow_ambiguity" value="true"/> <parameter key="keep_unmatched_stems" value="true"/> <parameter key="keep_unmatched_tokens" value="true"/> <parameter key="work_on_type_noun" value="true"/> <parameter key="work_on_type_verb" value="true"/> <parameter key="work_on_type_adjective" value="true"/> <parameter key="work_on_type_adverb" value="true"/> </operator> <operator activated="true" class="wordnet:find_synonym_wordnet" compatibility="5.3.000" expanded="true" height="82" name="Find Synonyms (2)" width="90" x="447" y="238"> <parameter key="use_prefix" value="false"/> <parameter key="synset_word_prefix" value="syn:"/> <parameter key="maximum_recursion_depth" value="1"/> <parameter key="multiple_meanings_per_word_policy" value="Take only first meaning"/> <parameter key="multiple_synsets_policy" value="Take only first synset per meaning"/> <parameter key="multiple_synset_words_policy" value="Take only first synset word"/> <parameter key="concatenation" value="Concatenate result per synset"/> <parameter key="keep_original_tokens" value="true"/> <parameter key="keep_unmatched_tokens" value="true"/> <parameter key="take_ID_instead_of_words" value="false"/> <parameter key="work_on_type_noun" value="true"/> <parameter key="work_on_type_verb" value="true"/> <parameter key="work_on_type_adjective" value="true"/> <parameter key="work_on_type_adverb" value="true"/> </operator> <connect from_port="document" to_op="Tokenize (2)" to_port="document"/> <connect from_op="Tokenize (2)" from_port="document" to_op="Filter Stopwords (2)" to_port="document"/> <connect from_op="Filter Stopwords (2)" from_port="document" to_op="Transform Cases (2)" to_port="document"/> <connect from_op="Transform Cases (2)" from_port="document" to_op="Stem (2)" to_port="document"/> <connect from_op="Open WordNet Dictionary (2)" from_port="dictionary" to_op="Stem (2)" to_port="dictionary"/> <connect from_op="Stem (2)" from_port="document" to_op="Find Synonyms (2)" to_port="document"/> <connect from_op="Stem (2)" from_port="dictionary" to_op="Find Synonyms (2)" to_port="dictionary"/> <connect from_op="Find Synonyms (2)" from_port="document" to_port="document 1"/> <portSpacing port="source_document" spacing="0"/> <portSpacing port="sink_document 1" spacing="0"/> <portSpacing port="sink_document 2" spacing="0"/> </process> </operator> <operator activated="true" class="multiply" compatibility="8.2.001" expanded="true" height="103" name="Multiply" width="90" x="447" y="85"/> <operator activated="true" class="order_attributes" compatibility="8.2.001" expanded="true" height="82" name="Reorder Attributes" width="90" x="447" y="238"> <parameter key="sort_mode" value="reference data"/> <parameter key="attribute_ordering" value=""/> <parameter key="use_regular_expressions" value="false"/> <parameter key="handle_unmatched" value="append"/> <parameter key="sort_direction" value="ascending"/> </operator> <operator activated="true" class="multiply" compatibility="8.2.001" expanded="true" height="103" name="Multiply (2)" width="90" x="581" y="340"/> <operator activated="true" class="order_attributes" compatibility="8.2.001" expanded="true" height="82" name="Reorder Attributes (2)" width="90" x="581" y="238"> <parameter key="sort_mode" value="reference data"/> <parameter key="attribute_ordering" value=""/> <parameter key="use_regular_expressions" value="false"/> <parameter key="handle_unmatched" value="append"/> <parameter key="sort_direction" value="ascending"/> </operator> <operator activated="true" class="cross_distances" compatibility="8.2.001" expanded="true" height="103" name="Cross Distances" width="90" x="715" y="238"> <parameter key="measure_types" value="NumericalMeasures"/> <parameter key="mixed_measure" value="MixedEuclideanDistance"/> <parameter key="nominal_measure" value="SimpleMatchingSimilarity"/> <parameter key="numerical_measure" value="CosineSimilarity"/> <parameter key="divergence" value="GeneralizedIDivergence"/> <parameter key="kernel_type" value="radial"/> <parameter key="kernel_gamma" value="1.0"/> <parameter key="kernel_sigma1" value="1.0"/> <parameter key="kernel_sigma2" value="0.0"/> <parameter key="kernel_sigma3" value="2.0"/> <parameter key="kernel_degree" value="3.0"/> <parameter key="kernel_shift" value="1.0"/> <parameter key="kernel_a" value="1.0"/> <parameter key="kernel_b" value="0.0"/> <parameter key="only_top_k" value="false"/> <parameter key="k" value="10"/> <parameter key="search_for" value="nearest"/> <parameter key="compute_similarities" value="true"/> </operator> <operator activated="false" class="data_to_similarity" compatibility="8.2.001" expanded="true" height="82" name="Data to Similarity" width="90" x="648" y="34"> <parameter key="measure_types" value="NumericalMeasures"/> <parameter key="mixed_measure" value="MixedEuclideanDistance"/> <parameter key="nominal_measure" value="NominalDistance"/> <parameter key="numerical_measure" value="CosineSimilarity"/> <parameter key="divergence" value="GeneralizedIDivergence"/> <parameter key="kernel_type" value="radial"/> <parameter key="kernel_gamma" value="1.0"/> <parameter key="kernel_sigma1" value="1.0"/> <parameter key="kernel_sigma2" value="0.0"/> <parameter key="kernel_sigma3" value="2.0"/> <parameter key="kernel_degree" value="3.0"/> <parameter key="kernel_shift" value="1.0"/> <parameter key="kernel_a" value="1.0"/> <parameter key="kernel_b" value="0.0"/> </operator> <connect from_op="Read Excel" from_port="output" to_op="Remove Duplicates" to_port="example set input"/> <connect from_op="Remove Duplicates" from_port="example set output" to_op="Set Role" to_port="example set input"/> <connect from_op="Set Role" from_port="example set output" to_op="Nominal to Text" to_port="example set input"/> <connect from_op="Nominal to Text" from_port="example set output" to_op="Process Documents from Data" to_port="example set"/> <connect from_op="Process Documents from Data" from_port="example set" to_op="Reorder Attributes" to_port="example set input"/> <connect from_op="Read Excel (2)" from_port="output" to_op="Remove Duplicates (2)" to_port="example set input"/> <connect from_op="Remove Duplicates (2)" from_port="example set output" to_op="Set Role (2)" to_port="example set input"/> <connect from_op="Set Role (2)" from_port="example set output" to_op="Nominal to Text (2)" to_port="example set input"/> <connect from_op="Nominal to Text (2)" from_port="example set output" to_op="Process Documents from Data (2)" to_port="example set"/> <connect from_op="Process Documents from Data (2)" from_port="example set" to_op="Multiply" to_port="input"/> <connect from_op="Multiply" from_port="output 1" to_op="Reorder Attributes (2)" to_port="example set input"/> <connect from_op="Multiply" from_port="output 2" to_op="Reorder Attributes" to_port="reference_data"/> <connect from_op="Reorder Attributes" from_port="example set output" to_op="Multiply (2)" to_port="input"/> <connect from_op="Multiply (2)" from_port="output 1" to_op="Reorder Attributes (2)" to_port="reference_data"/> <connect from_op="Multiply (2)" from_port="output 2" to_op="Cross Distances" to_port="reference set"/> <connect from_op="Reorder Attributes (2)" from_port="example set output" to_op="Cross Distances" to_port="request set"/> <connect from_op="Cross Distances" from_port="result set" to_port="result 1"/> <portSpacing port="source_input 1" spacing="0"/> <portSpacing port="sink_result 1" spacing="0"/> <portSpacing port="sink_result 2" spacing="0"/> <description align="center" color="gray" colored="true" height="163" resized="true" width="142" x="28" y="320">Read Requirements Document</description> <description align="center" color="gray" colored="true" height="147" resized="true" width="126" x="30" y="14">Read Requirements Change Requests</description> </process> </operator> </process>

(您可以使用以下命令检查Docker注册表的用户名和密码

kubectl create secret docker-registry YOUR_SECRET_NAME --docker-server=REGISTRY_LOGIN_SERVER --docker-username=USERNAME --docker-password=PASSWORD --docker-email=VALID_EMAIL

然后,您在kubernets资源规范中引用创建的秘密名称。 例如。

az acr credential show --name YOUR_REGISTRY_NAME