Pycharm 部署 Docker 容器解释器

Posted offduty

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pycharm 部署 Docker 容器解释器相关的知识,希望对你有一定的参考价值。

假定 164 服务器中的 Docker 容器已配置完成。接下来,我们将详细说明如何在 Pycharm 中,将项目的 python 解释器指向 Docker 容器。

1 配置 Docker

(1)依次点击 View --> Tool Windows --> Docker.
技术图片
(2)然后点击铅笔图标,开始配置 Docker。
技术图片
(3) 弹出「Docker」窗口后,在如下图所示的「Engine API URL」中填入:tcp://192.168.7.164:2375,其中 2375 为服务器端 Docker 容器的端口(端口查看方法见附件)。
技术图片

当看到如上图所示的「Connection successful」,则表示已成功连接到了 docker 镜像。然后点击 「OK」。

2 新建项目

「新建项目」窗口如下图所示。
技术图片

3 配置该项目的 python 解释器

(1)依次点击:File --> Settings --> Project Interpreter。弹出如下窗口,然后点击「齿轮图标」,选择「add」。
技术图片
(2) 在弹出的「Add Python Interpreter」窗口中,选择所需的包含 python解释器「Image name」。然后点击 「OK」。
技术图片
(3)按需更改 「Python Interpreter path:」,默认值为 python。这里我们更改为 python3。然后点击 「OK」。
技术图片
(4) 在弹出的「Settings」窗口中点击「OK」。
技术图片
至此,已将 Pycharm 中该项目的 python 解释器指向了 Docker 容器。接下来,我们将对该项目的 python 源码运行环境进行配置。

4 编辑脚本

新建一名为 fibonacci_numbers.py 的源文件,输入如下内容:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

a, b = 0, 1
while a < 10:
    print(a, end=', ')
    a, b = b, a+b

5 配置服务器和文件映射关系

项目相关的配置包括三部分:

  • 配置远程服务器
  • 配置本地和服务器端的目录映射关系
  • 配置本地文件与服务器文件间的同步方式
    技术图片
    (1)配置远程服务器。
    技术图片
    (2)配置本地文件与服务器文件间的映射关系。
    技术图片
    (3)配置文件或目录上传服务器的方式。
    技术图片
    这里我们选择「On explicit save action (Ctrl +S)」
    技术图片

6 上传脚本文件到服务器

技术图片
当看到如下图绿色框所示的提示,则表示上传服务器成功。
技术图片

7 配置脚本运行环境

接下来,我们将对 fibonacci_numbers.py python 脚本运行环境进行配置。
(1)依次单击 Run --> Run,
技术图片
弹出如下窗口, 选择编辑配置信息。
技术图片
(2)开始配置远程服务器、本地工作目录、以及 Docker 容器地址。
技术图片
① 假设 Docker 中的工作目录为:/home/leaf/project,配置 「Path Mappings」如下。
技术图片
② 配置 「Docker container settings」,默认情况下,其地址是指向本地的。这里我们将其更改为 164 服务器。
技术图片
相关路径设置如下。
技术图片
③ 最终配置完成后的效果图如下。
技术图片

8 运行脚本

技术图片

附件

新建项目时指定解释器

在创建项目文件时,我们采用了 pychram 默认的 python 解释器配置。此时 pycharm 将在该项目下新建一个名字为 venv 的虚拟环境。如果不想创建该虚拟环境,可以在创建项目时,自行指定 python 解释器。需要说明的是,如果此时将解释器指向 Docker 容器是行不通的,如下图所示。
技术图片

如何查看服务器上 Docker 容器配置信息中的端口?

$ vim /lib/systemd/system/docker.service

技术图片

参考资料

[1] 使用Pycharm远程连接及管理Docker
[2] Pycharm配置Docker解释器
[3] PY => Pycharm连接Docker及代码自动上传与运行

以上是关于Pycharm 部署 Docker 容器解释器的主要内容,如果未能解决你的问题,请参考以下文章

如何将 PyCharm 连接到位于 Docker 容器内的 python 解释器?

PyCharm:使用 docker 容器设置 python 解释器,但使用 `--cpuset-cpus`

pycharm中创建并设置docker解释器

Pycharm 使用 Docker Container Python 作为远程解释器

Pycharm docker-compose解释器不加载库

Pycharm调试docker compose中的manage.py命令