第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

從 dockerize golang 模板中的文件內(nèi)容設(shè)置變量

從 dockerize golang 模板中的文件內(nèi)容設(shè)置變量

Go
泛舟湖上清波郎朗 2023-05-22 16:10:07
我想使用dockerizejsonQuery中的語(yǔ)法來解析 traefik 的 acme.json 并為另一個(gè)服務(wù)中的 TLS 設(shè)置發(fā)出證書/密鑰文件。jsonQuery 接受一個(gè)字符串,該示例將其作為環(huán)境變量提供{{ .Env.myJson }}我如何獲取文件的字符串內(nèi)容:{{with?$myJsonContent?:=?<insert?magic?here>?}} ????#?extract?key?to?file? {{end}}
查看完整描述

2 回答

?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊

Gotext/template本身并不支持它??雌饋韉ockerize 工具提供了一些擴(kuò)展功能,但它們都不允許這樣做。

(我能想到的最接近的事情是kubernetes-helm支持從 Helm chart 讀取文件,但這是通過注入一個(gè)特殊的訪問器對(duì)象在 Go 級(jí)別實(shí)現(xiàn)的,該訪問器對(duì)象可以為模板代碼提供文件訪問 API,并且它有意限制為物理上位于 Helm chart 目錄中的文件。)


查看完整回答
反對(duì) 回復(fù) 2023-05-22
?
慕哥9229398

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超6個(gè)贊

我看不到任何向模板添加函數(shù)的方法,因?yàn)?dockerize 不會(huì)在解析之前向模板公開添加函數(shù)。因此,您要么必須 (1) 將 acme.json 的內(nèi)容放入環(huán)境變量中,要么 (2) 修改 dockerize 以在模板中包含 jsonFileQuery 函數(shù)。

  1. 在運(yùn)行 dockerize 之前將 acme.json 的內(nèi)容添加到環(huán)境變量中——然后像示例中那樣訪問。這可以通過一個(gè)小的 go 程序來完成,添加到容器中并在 CMD dockerize 之前通過 CMD 運(yùn)行

  2. 分叉 dockerize 并更改 jsonQuery:分叉 dockerize 并更改template.go 的第 83 行:
    從:parser, err := gojq.NewStringQuery(jsonObj)
    到:?parser, err := gojq.NewFileQuery(jsonObj)
    然后使用:

    {{with?$myJsonContent?:=?jsonQuery?"/opt/traefik/acme.json"?"toplevelobject"??}}
    ????#?extract?key?to?file?
    {{end}}

    gojq.NewStringQuery()是 jsonQuery 模板函數(shù)背后的函數(shù)。gojq.NewFileQuery?()版本與 StringQuery 具有相同的簽名,但在輸入字符串的路徑處讀取文件,而不是將輸入字符串用作 json。

    或者

    將新的 jsonFileQuery 模板函數(shù)合并到 dockerize 中:向 dockerize 提交問題以將 jsonFileQuery 添加到模板函數(shù)中。似乎它可以設(shè)置為與 jsonQuery 相同,但與上面的區(qū)別很小。在template.go中,添加 jsonFileQuery 函數(shù)并將其分配給 generateFile() 中的 template.FuncMap{} 中的 jsonFileQuery。


查看完整回答
反對(duì) 回復(fù) 2023-05-22
  • 2 回答
  • 0 關(guān)注
  • 144 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)