Docker 连接设置
最后修改时间:2023 年 9 月 5 日文件 | 设置 | 构建、执行和部署 | 适用于 Windows 和 Linux 的Docker
PyCharm | 设置 | 构建、执行和部署 | 适用于 macOS 的Docker
CtrlAlt0S
指定从 PyCharm 访问 Docker 引擎 API 的设置。有关使用 Docker 与 PyCharm 集成的更多信息,请参阅Docker。
启用 Docker 插件
此功能依赖于Docker插件,该插件默认在 PyCharm 中捆绑并启用。如果相关功能不可用,请确保您没有禁用该插件。
笔记
默认情况下,Docker 插件仅在 PyCharm Professional 中可用。对于 PyCharm Community Edition,您需要按照安装插件中所述安装 Docker 插件。
按打开 IDE 设置,然后选择插件。CtrlAlt0S
打开“已安装”选项卡,找到Docker插件,然后选中插件名称旁边的复选框。
您可以添加多个 Docker 配置,每个配置代表一个到单独 Docker 守护进程的连接:
- Docker
添加新的 Docker 配置。
- 删除 AltDelete
删除选定的 Docker 配置。
对于每个 Docker 配置,指定名称并根据操作系统选择连接类型:
- 适用于 Windows 的 Docker
这是使用Windows 版Docker Desktop时推荐的选项。
- 适用于 Mac 的 Docker
这是在 macOS使用Docker Desktop时推荐的选项。
- Unix套接字
这是使用适用于 Linux 的Docker Desktop时推荐的选项。
- TCP套接字
手动配置Docker 引擎 API的 URL 。
在引擎 API URL字段中,您可以指定到远程 Docker 守护程序或任何 Docker 套接字路径(包括自定义本地套接字)的 TCP 连接。例如,在无根模式下,Docker 守护进程通过
systemd
具有唯一标识符的用户服务运行,因此套接字路径将类似于unix:///run/user/1000/docker.sock
。默认情况下,在 macOS 和 Linux 上,Docker 守护进程侦听 Unix 套接字上的 Docker 引擎 API 请求
unix:///var/run/docker.sock
。如果您使用的是Windows 版Docker Desktop,则可以通过位于 的命名管道
npipe:////./pipe/docker_engine
或位于 的 TCP 套接字连接到 Docker 引擎tcp://localhost:2375
。您还可以连接到Podman,它具有与 Docker Engine API 等效的 API。有关更多信息,请参阅Podman。
笔记
由于“证书文件夹”字段指定包含证书的任何文件夹,因此该字段对应于
DOCKER_CERT_PATH
环境变量。有关更多信息,请参阅Docker 文档中的客户端模式。- SSH
通过现有SSH 配置连接到远程 Docker 守护程序或创建新配置。
- 迷你库贝
如果您正在运行minikube,请选择此选项以自动检测并连接到 minikube 的 Docker Engine 环境。
如果 PyCharm 无法检测到 minikube 或者它正在远程运行,请运行命令以获取必要的连接信息并在TCP socket
minikube docker-env
下设置以下内容:Engine API URL : 的值
DOCKER_HOST
(用https
作为协议而不是tcp
)证书文件夹:值
DOCKER_CERT_PATH
Windows 和 macOS 主机的虚拟机路径映射
Docker 引擎在 Linux 上本机运行,因此您可以将目录和文件从 Linux 主机直接挂载到容器。Windows 或 macOS 上的 Docker 主机使用带有 Linux 的轻量级虚拟机来运行 Docker 引擎。使用 Docker 连接配置选项下表来配置本地文件系统和运行 Docker 引擎的虚拟机之间的映射。
- 添加 AltInsert
添加新映射。
- 消除 Ctrl0Y
删除选定的映射。
- 编辑 Enter
编辑选定的映射。
- 虚拟机路径
虚拟机中用于运行此 Docker 引擎的目录的路径。
- 本地路径
要映射到虚拟机中相应目录的本地文件夹的路径。您将无法将此文件夹之外的任何内容绑定安装到此 Docker 引擎运行的容器。
例如,假设您将绑定安装到 Docker 容器的所有文件保留在/Users /jsmith /docker-share中。您可以将此目录映射到虚拟机上的/dockerShare以进行 Docker 引擎连接。该 Docker 引擎将有效地将文件绑定到/dockerShare中的容器,因为它可以访问从/Users /jsmith /docker-share映射的文件。
这不会影响您作为运行容器的用户,因为您仍然将绑定挂载和卷配置为主机上的某些路径与容器内的某些路径之间的映射。但是,您无法挂载映射到虚拟机的目录之外的任何内容。
假设您运行一个容器并将主机上包含应用程序工件的目录/Users /jsmith /docker-share /out挂载到容器中的/usr /local /tomcat /webapps 。在这种情况下,Docker 引擎实际上挂载/dockerShare /out,因为它可以通过虚拟机映射访问您的文件。
有关卷和绑定挂载的更多信息,请参阅在 Docker 中管理数据。
感谢您的反馈意见!