我们需要将名称为walletkey.properties的文件做成configmap,然后将walletkey.properties文件单独挂载出来到/data/walletkey.properties,且不能覆盖/data目录,具体如下
1、创建configmap
configmap文件内容
其中walletkey.properties: >-引用部分是文本内容
---
apiVersion: v1
data:walletkey.properties: >-wallet.keys.data[0].coin=bnbwallet.keys.data[0].seed=abcdedfefedswallet.keys.data[0].type=ethwallet.keys.data[1].coin=arbwallet.keys.data[1].seed=abcdedfefedswallet.keys.data[1].type=ethwallet.keys.data[2].coin=opwallet.keys.data[2].seed=abcdedfefedswallet.keys.data[2].type=ethwallet.keys.data[3].coin=maticwallet.keys.data[3].seed=abcdedfefedswallet.keys.data[3].type=ethwallet.keys.data[4].coin=solwallet.keys.data[4].seed=abcdedfefedswallet.keys.data[4].type=solwallet.keys.data[5].coin=btcwallet.keys.data[5].seed=abcdedfefedswallet.keys.data[5].type=btc
kind: ConfigMap
metadata:name: walletkey.propertiesnamespace: bitgetresourceVersion: '4866437'
创建configmap
kubectl create -f configmap.yaml
查看创建好的configmap
kubectl get configmap walletkey.properties -n bitget
2、挂载操作
A方案、yaml配置
配置文件内容如下
volumeMounts:- mountPath: /data/walletkey.propertiesname: volume-h77amreadOnly: truesubPath: walletkey.propertiesvolumes:- configMap:defaultMode: 420items:- key: walletkey.propertiespath: walletkey.propertiesname: walletkey.propertiesname: volume-h77am
B方案、kuboard控制台操作
3、进入容器后我们可以看到我们的文本内容
root@wallet-597c57d89c-z6hvz:/data# ls /data/
data logs wallet-core.jar wallet-core.uuid walletkey.properties
root@wallet-core-597c57d89c-z6hvz:/data# cat /data/walletkey.properties
wallet.keys.data[0].coin=bnb
wallet.keys.data[0].seed=abcdedfefeds
wallet.keys.data[0].type=ethwallet.keys.data[1].coin=arb
wallet.keys.data[1].seed=abcdedfefeds
wallet.keys.data[1].type=ethwallet.keys.data[2].coin=op
wallet.keys.data[2].seed=abcdedfefeds
wallet.keys.data[2].type=ethwallet.keys.data[3].coin=matic
wallet.keys.data[3].seed=abcdedfefeds
wallet.keys.data[3].type=ethwallet.keys.data[4].coin=sol
wallet.keys.data[4].seed=abcdedfefeds
wallet.keys.data[4].type=solwallet.keys.data[5].coin=btc
wallet.keys.data[5].seed=abcdedfefeds
wallet.keys.data[5].type=btc
如果我们有多个文件需要这样挂载的话,我们可以操作如下
volumeMounts:- mountPath: /data/leaf.propertiesname: volume-zhma7subPath: leaf.properties- mountPath: /data/bootstrap.ymlname: volume-zhma7subPath: bootstrap.ymlworkingDir: /datavolumes:- configMap:defaultMode: 420items:- key: leaf.propertiespath: leaf.properties- key: bootstrap.ymlpath: bootstrap.ymlname: leaf.propertiesname: volume-zhma7
kuboard挂载方式
然后启动的时候可以
java -Dspring.config.location=/data/leaf.properties -jar yourapp.jar