【Pycharm教程】如何让PyCharm使用Docker配置Python解释器?你只需要看这篇就够了!


✅ 包含编程资料、学习路线图、源代码、软件安装包等!【点击这里】!

前言

PyCharm 与Docker的集成允许您在 Docker 容器中部署的各种配置的开发环境中运行您的应用程序。

首先先决条件

确保满足以下先决条件:
  • Docker 已安装,如Docker Docs页面中所述。您可以在各种平台上安装 Docker,但这里我们将使用Windows安装。

    请注意,您可能希望在不同平台上重复本教程;然后使用macOS和Linux的 Docker 安装(Ubuntu,也可以使用其他与发行版相关的说明)。

  • 你有一个稳定的互联网连接。

    确保您有稳定的 Internet 连接,以便 PyCharm 可以下载和运行busybox:latest. 成功配置 Docker 后,就可以下线了。

  • 在开始使用 Docker 之前,请确保已启用Docker插件。该插件与 PyCharm 捆绑在一起,默认情况下是激活的。如果插件未激活,请在 IDE 设置的插件Ctrl+Alt+S页面上启用它,如安装插件中所述。

    在Settings/Preferences对话框 ( Ctrl+Alt+S) 中,选择Build、Execution、Deployment | Docker,然后在Connect to Docker daemon with下为 <您的操作系统> 选择 Docker。例如,如果您使用的是 macOS,请选择Docker for Mac。

请注意,您不能将任何 Python 包安装到基于 Docker 的项目解释器中。

准备一个例子

创建一个 Python 项目 QuadraticEquation,添加Solver.py文件,然后复制并粘贴以下代码:
python 复制代码
import math

class Solver:

    def demo(self, a, b, c):
        d = b ** 2 - 4 * a * c
        if d > 0:
            disc = math.sqrt(d)
            root1 = (-b + disc) / (2 * a)
            root2 = (-b - disc) / (2 * a)
            return root1, root2
        elif d == 0:
            return -b / (2 * a)
        else:
            return "This equation has no roots"

if __name__ == '__main__':
    solver = Solver()

    while True:
        a = int(input("a: "))
        b = int(input("b: "))
        c = int(input("c: "))
        result = solver.demo(a, b, c)
        print(result)

将 Docker 配置为远程解释器

现在,让我们定义一个基于 Docker 的远程解释器。
确保您已在计算机上下载并安装Python。
1. 执行以下操作之一:

①单击Python 解释器选择器并选择添加解释器。

②按Ctrl+Alt+S打开项目设置/首选项并转到项目 <项目名称> | Python 解释器。单击并选择添加。

2. 在打开的对话框中,选择Docker选项,从列表中选择 Docker 服务器(如果缺少服务器,请单击新建...),然后指定映像名称:python:latest。Python 解释器路径应该具有默认值:
因此,在项目设置中,您应该会看到如下内容:
3. 单击确定以应用更改并关闭对话框。
在 Docker 容器中运行您的应用程序
main在装订线中,在子句旁边,单击按钮,然后选择运行"Solver.py"命令。您会看到您的脚本在 Docker 容器中运行:
该脚本在运行工具窗口中启动。如您所见,运行工具窗口中的前缀显示了容器 ID。
切换到服务工具窗口以预览容器详细信息。展开Containers节点,您会发现具有相同 ID 的节点。
您可以切换到Log选项卡以查看执行结果。
在 Docker 容器中调试应用程序
接下来,让我们调试应用程序。为此,让我们在计算的行上放置一个断点d,单击装订线并选择Debug 'Solver'。
正如您在调试工具窗口的控制台选项卡中看到的,调试器也在 Docker 容器中运行:
您还可以在"服务"工具窗口中发现它。但是,现在这个容器有一个不同的 id,因此 - 不同的名称。您可以切换到Log选项卡以查看执行状态。
当应用程序以任何方式执行时,PyCharm 创建一个新容器很重要。无论是运行、调试、覆盖运行、测试------每次执行都需要一个新容器!

🟢 总结

  • 最后希望你编程学习上不急不躁,按照计划有条不紊推进,把任何一件事做到极致,都是不容易的,加油,努力!相信自己!

🟡 文末福利

  • 最后这里免费分享给大家一份Python全套学习资料,希望能帮到那些不满现状,想提升自己却又没有方向的朋友,也可以和我一起来学习交流呀。
🔴包含编程资料、学习路线图、源代码、软件安装包等!【点击这里】领取!
  • ① Python所有方向的学习路线图,清楚各个方向要学什么东西
  • ② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析
  • ③ 100多个Python实战案例,学习不再是只会理论
  • ④ 华为出品独家Python漫画教程,手机也能学习

✅ 可以扫描下方二维码领取【保证100%免费 】

相关推荐
傅科摆 _ py10 小时前
DP,贪心,堆和栈,二分力扣复习
开发语言·python·算法
吴名氏.11 小时前
Java转AI Agent教程(第一周)让模型先跑起来
人工智能·python·ai·ai agent
杨浦老苏11 小时前
把项目管理搬回自己服务器:Windshift部署与避坑
docker·项目管理·群晖
木雷坞11 小时前
Baserow Docker部署:导入设备借用CSV,再用表单新增登记
运维·docker·容器
第404号工位11 小时前
离职退电脑前别只点“清空回收站”!手把手教你彻底抹除凭证与数字痕迹
linux·python·架构
Metaphor69211 小时前
使用 Python 在 Word 文档中添加、修改和删除变量
python·word
終不似少年遊*12 小时前
【AI Coding实战方法论】从计划协作到架构护栏,一套能长期复用的工程流程
人工智能·python·团队开发·ai编程·ai coding·skills·上下文管理
lusklusklusk12 小时前
Python 全局变量与局部变量区别——global 关键字、__main__ 块与作用域示例
开发语言·前端·python
马剑威(威哥爱编程)12 小时前
Python 智能体开发实战 01:装了三遍环境还在报错?虚拟环境和 DeepSeek 一次配到位
开发语言·人工智能·python·agent
卷无止境12 小时前
Skill 的安全边界在哪里:风险来源、验证思路与用户可用的防线
后端·python