Estou preso por horas neste estranho assunto. Eu tenho um bashscript que está executando o seguinte:
TEST="12.x.x.x"
echo ${TEST}
me deu 12.xxx
Portanto, agora quero usar este env var em meu comando:
oadm ca create-server-cert --signer-cert=ca.crt \
--signer-key=ca.key --signer-serial=ca.serial.txt \
--hostnames='docker-registry.default.svc.cluster.local,$TEST' \
--cert=registry.crt --key=registry.key
Um eco desse comando mostra o conteúdo de $ TEST nele. Mas o comando falha (ele não criou o crt e a chave para meu IP). Mas funciona quando estou apenas executando:
oadm ca create-server-cert --signer-cert=ca.crt \
--signer-key=ca.key --signer-serial=ca.serial.txt \
--hostnames='docker-registry.default.svc.cluster.local,12.x.x.x' \
--cert=registry.crt --key=registry.key
Qual pode ser o problema? Um eco de $ TEST sempre deu meu IP. Antes e depois do comando.
Aspas simples evitam a expansão de variáveis. Experimente com aspas duplas:
oadm ca create-server-cert --signer-cert=ca.crt \
--signer-key=ca.key --signer-serial=ca.serial.txt \
--hostnames="docker-registry.default.svc.cluster.local,${TEST}" \
--cert=registry.crt --key=registry.key
Este artigo é coletado da Internet.
Se houver alguma infração, entre em [email protected] Delete.
deixe-me dizer algumas palavras