Open5

devcontainer の postCreateCommand で複数のコマンドを実行したい

rhenerhene

.devcontainer/postCreateCommand.sh にコマンドを列記する

.devcontainer/postCreateCommand.sh を作成してコマンドを列記した上で postCreateCommand に指定する

.devcontainer/devcontainer.json
{
    "postCreateCommand": ".devcontainer/postCreateCommand.sh"
}
rhenerhene

そもそも postCreateCommand を使わない

カスタム用の .devcontainer/Dockerfile を作り、 image の代わりに dockerFile で指定する

.devcontainer/devcontainer.json
{
-    "image": "<docker-image>:<tag>",
+    "dockerFile": "Dockerfile",
}
rhenerhene

postCreateCommand にコマンドを列記する

.devcontainer/devcontainer.json
{
    "postCreateCommand": "command1 && command2 && command3 foo bar"
}
rhenerhene

.devcontainer/postCreateCommand.sh にコマンドを列記する その2

(一応念のため…)

.devcontainer/postCreateCommand.sh を作成してコマンドを列記した上で chmod で実行権限を与えてから呼び出す

.devcontainer/devcontainer.json
{
    "postCreateCommand": "chmod +x .devcontainer/postCreateCommand.sh && .devcontainer/postCreateCommand.sh"
}
rhenerhene

.devcontainer/postCreateCommand.sh にコマンドを列記する その3

.devcontainer/postCreateCommand.sh を作成してコマンドを列記した上で postCreateCommand/bin/sh から呼び出す

.devcontainer/devcontainer.json
{
    "postCreateCommand": "/bin/sh .devcontainer/postCreateCommand.sh"
}