我正在尝试在Pycharm中设置docker run配置,我对pycharm中的此功能还很陌生,但我无法使其正常工作。
在 docker 中,我将使用以下命令运行容器
docker build -t test-container . && docker run --name container-pycharm -t -i --env-file .env -v $(pwd):/srv/app -p 8080:8080 --rm test-container ./serve-app
我通过添加以下行在pycharm中进行了设置
--rm --env-file .env -i -t -p 8080:8080 -v $(pwd):/srv/app
到相关docker
command line options
Pycharm窗口中的Run/Debug Configuration
部分。不幸的是我得到了Failed to deploy 'container-pycharm Dockerfile: Dockerfile': com.github.dockerjava.api.exception.BadRequestException: {"message":"create $(pwd): \"$(pwd)\" includes invalid characters for a local volume name, only \"[a-zA-Z0-9][a-zA-Z0-9_.-]\" are allowed. If you intended to pass a host directory, use absolute path"}
显然,我不能在命令行选项中使用
$(pwd)
,关于如何在pycharm中解决此问题的任何想法? 最佳答案
Pycharm不会直接通过您在命令预览中看到的命令直接调用docker,而是经过其自定义解析器,目前他们尚未实现读取envs的功能。因此,“如果要传递主机目录,请使用绝对路径”
并且-v
在当前版本中未被正式支持为命令行选项。 Ref
改用Bind mounts