python interpreter配置_PyCharm使用之配置SSH Interpreter的方法步骤

在文章PyCharm使用之利用Docker镜像搭建Python开发环境中,该文章介绍了在PyCharm中如何利用Docker镜像搭建Python开发环境。在本文中,将会介绍如何使用PyCharm来配置SSH Interpreter,本文中的SSH Interpreter用Docker镜像来实现。

演示项目的结构如下图所示:

制作带SSH服务的Docker镜像

首先,我们先制作带SSH服务的Docker镜像,里面含有Python开发环境,Dockerfile文件为python_env.build,内容如下:

FROM centos:7.2.1511

# author label

LABEL maintainer="jclian"

# install related packages

ENV ENVIRONMENT DOCKER_PROD

RUN cd / && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \

&& yum makecache \

&& yum install -y wget aclocal automake autoconf make gcc gcc-c++ python-devel mysql-devel bzip2 libffi-devel epel-release \

&& yum clean all

# install python 3.7.0

RUN wget https://npm.taobao.org/mirrors/python/3.7.0/Python-3.7.0.tar.xz \

&& tar -xvf Python-3.7.0.tar.xz -C /usr/local/ \

&& rm -rf Python-3.7.0.tar.xz \

&& cd /usr/local/Python-3.7.0 \

&& ./configure && make && make install

# 创建src目录

COPY src /root/src

WORKDIR /root/src

# install related packages

RUN pip3 install -i https://pypi.doubanio.com/simple/ -r requirements.txt

# expose port

EXPOSE 15731

# install ssh

RUN yum -y update; yum clean all

RUN yum -y install openssh-server passwd; yum clean all

ADD ./start.sh /start.sh

RUN mkdir /var/run/sshd

RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''

RUN chmod 755 /start.sh

RUN /start.sh

ENTRYPOINT ["/usr/sbin/sshd", "-D"]

在这个CentOS系统中,我们配置了SSH服务,其中start.sh中含有账号名和密码,同时又配置了Python开发环境,start.sh文件的内容如下:

#!/bin/bash

__create_user() {

# Create a user to SSH into as.

useradd user

SSH_USERPASS=newpass

echo -e "$SSH_USERPASS\n$SSH_USERPASS" | (passwd --stdin user)

echo ssh user password: $SSH_USERPASS

}

# Call all functions

__create_user

requirements.txt的内容如下:

tornado==5.1.1

jieba==0.39

安装的第三方模块为tornado和jieba。制作镜像的脚本为build.sh,内容如下:

#!/usr/bin/env bash

TIMENOW=`date +%y.%m.%d.%H%M`

# 进行docker镜像打包

docker build -f python_dev.build -t ssh_docker_python_dev:${TIMENOW} .

运行该镜像,生成的docker镜像为ssh_docker_python_dev:19.12.25.1346, 如下所示:

$ docker images | grep ssh_docker

ssh_docker_python_dev 19.12.25.1346 cca5b78c199c 9 hours ago 988MB

到此,制作docker镜像完成。

测试镜像的SSH服务

接着,我们在本地启动该docker镜像,命令如下:

$ docker run -d -p 49154:22 ssh_docker_python_dev:19.12.25.1346

接着输入:

$ ssh -p 49154 user@127.0.0.1

在接受凭证时选择yes,并输入密码“newpass”,就能顺利进入该容器内部了,尝试Python使用,如下:

$ ssh -p 49154 user@127.0.0.1

user@127.0.0.1's password:

[user@4718f33bc470 ~]$ python3

Python 3.7.0 (default, Dec 24 2019, 23:58:12)

[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>> import jieba

>>> list(jieba.cut("三亚的风景很不错"))

Building prefix dict from the default dictionary ...

Dumping model to file cache /tmp/jieba.cache

Loading model cost 1.197 seconds.

Prefix dict has been built succesfully.

['三亚', '的', '风景', '很', '不错']

在PyCharm中配置SSH Interpreter

在PyCharm的系统配置中,在“Project Interpreter”选择中可以看到右侧的“Project Inter”中没有interpreter,我们点击有变动的小齿轮,选择“Add”,如下图:

在弹出来的界面中,我们选择interpreter的类型为“SSH Interpreter”,同时设置连接信息如下图:

点击“Next”,输入密码“newpass”,再点击“Next”,选择Interpreter的路径为“/usr/local/Python-3.7.0/python”,如下图:

需要注意的是,在这里我们能够看到本地项目路径对应于容器内的/tmp/pycharm_project_951路径,同时会把该项目中的文件自动上传至容器内对应的项目路径。最后点击“Finish”即可完成SSH Interpreter的配置。

测试SSH Interpreter

配置好Python环境后,我们用jieba_test.py作为测试文件,来验证Python环境是否配置好。jieba_test.py的代码如下:

# -*- coding: utf-8 -*-

# author: Jclian91

# place: Pudong Shanghai

# time: 2:09 下午

import os, re, json, traceback

import jieba

if __name__ == '__main__':

sent = '最近这几天,我都在三亚上班,看着海开发的感觉还不错。'

print(list(jieba.cut(sent)))

输出结果如下:

ssh://user@127.0.0.1:49154/usr/local/Python-3.7.0/python -u /tmp/pycharm_project_58/jieba_test.py

Building prefix dict from the default dictionary ...

Loading model from cache /tmp/jieba.cache

Loading model cost 0.775 seconds.

Prefix dict has been built succesfully.

['最近', '这', '几天', ',', '我', '都', '在', '三亚', '上班', ',', '看着', '海', '开发', '的', '感觉', '还', '不错', '。']

太好了,Docker容器内的Python开发环境是可以使用的。这时候,我们在进入Docker容器内去查看下,如下:

$ docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

4718f33bc470 ssh_docker_python_dev:19.12.25.1346 "/usr/sbin/sshd -D" 20 minutes ago Up 20 minutes 15731/tcp, 0.0.0.0:49154->22/tcp brave_nobel

$ docker exec -it 4718f33bc470 bash

[root@4718f33bc470 src]# cd /tmp/pycharm_project_58/

[root@4718f33bc470 pycharm_project_58]# ls -l

total 24

-rw-rw-r-- 1 user user 960 Dec 25 14:12 README.md

-rw-rw-r-- 1 user user 150 Dec 25 13:21 build.sh

-rw-rw-r-- 1 user user 284 Dec 25 14:10 jieba_test.py

-rw-rw-r-- 1 user user 1100 Dec 25 13:46 python_dev.build

drwxrwxr-x 2 user user 4096 Dec 25 22:48 src

-rw-rw-r-- 1 user user 235 Dec 25 13:21 start.sh

[root@4718f33bc470 pycharm_project_58]#

可以看到,容器中的/tmp/pycharm_project_58路径下确实包含了本地项目的所有文件。

关于如何制作带SSH服务和Python开发环境的Docker镜像以及如何在PyCharm中配置SSH Interpreter的讲述到此结束,感谢大家的阅读~

该演示项目已上传至Github,网址为:https://github.com/percent4/Python_docker。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: PyCharm使用之配置SSH Interpreter的方法步骤

本文地址: http://www.cppcns.com/jiaoben/python/295471.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值