0

次のようなdockerコンテナを実行したい:

docker run --rm -it -v volume1:/target -v volume2:/backup duplicity-image backup-label

これにより、次のエントリポイントが実行されます。

duplicity /target file:///backup/$backup-label

だから私の質問は、それが解決できるように ENTRYPOINT をどのように構成し、$backup-labelどのように渡すかですbackup-label...それを一重引用符で囲む必要がありますか...その前にダッシュ...?

4

1 に答える 1

2

イメージにスクリプトがある場合、そのスクリプトは、コマンド ラインENTRYPOINTでイメージの後に渡された引数を受け取ります。docker runつまり、次の場合です。

ENTRYPOINT /path/to/my/script.sh

そして、あなたは実行します:

docker run myimage one two three

スクリプトENTRYPOINTは次のように呼び出されます。

/path/to/my/script.sh one two three

その時点から、引数を取る他のシェルスクリプトを書くのと同じです:

#!/bin/sh

backup_label=$1
duplicity /target file:///backup/$backup_label
于 2016-05-19T13:29:54.450 に答える