go言語で書かれたサーバーのあるプロジェクトディレクトリの直下(あるいは go.mod/go.sum
ファイルがあるディレクトリ)で go mod tidy
したいです。ただし、条件としてDockerコマンドしか使うことができません。
このとき、どうすればいいか教えてください。
- カレントディレクトリを/dataフォルダにマウントしても go mod tidyで指定できません。
console
1$ docker container run -v ${PWD}:/data --rm golang go mod tidy /data 2go mod tidy: no arguments allowed
- じゃあ移動しようず...(*´Д`)
console
1$ docker container run -v ${PWD}:/data --rm golang "cd /data && go mod tidy" 2docker: Error response from daemon: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "cd": executable file not found in $PATH: unknown.
-it
で手動でマウントすれば確かにできますが、1ライナーに収まりません
cosole
1$ docker container run -it -v ${PWD}:/data --rm golang 2root@e04b8c0e6f34:/go# cd /data 3root@e04b8c0e6f34:/data# go mod tidy 4go: downloading github.com/deepmap/oapi-codegen v1.8.1 5go: downloading github.com/labstack/echo/v4 v4.3.0 6go: downloading github.com/stretchr/testify v1.5.1 7...略 8root@e04b8c0e6f34:/data# touch here? 9root@e04b8c0e6f34:/data# exit 10exit 11~/work/XXX$ ls -l here? -rw-r--r-- 1 root root 0 Jul 13 18:27 'here?'
どなたかご教授ください。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/07/13 10:47
2021/07/13 11:01