PyCharm使用Docker镜像搭建Python开发环境
在我们平时使用PyCharm的过程中,一般都是连接本地的Python环境进行开发,但是如果是离线的环境呢?这样就不好搭建Python开发环境,因为第三方模块的依赖复杂,不好通过离线安装包的方式安装。本文将介绍如何利用PyCharm来连接Docker镜像,从而搭建Python开发环境。
首先,我们需要准备一下工具:
- PyCharm专业版
- Docker
我们用一个示例项目来演示在PyCharm中如何利用Docker镜像搭建Python开发环境。项目的截图如下:
注意到,在该项目中还没有设置Python开发环境,ExternalLibraries为空,到时候我们将用Docker中的Python环境作为该项目的Python开发环境。
第一步,我们需要制作Docker镜像,该镜像的Dockerfile文件(python_dev.build)如下:
FROMcentos:7.2.1511 #authorlabel LABELmaintainer="jclian" #installrelatedpackages ENVENVIRONMENTDOCKER_PROD RUNcd/&&ln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/localtime\ &&yummakecache\ &&yuminstall-ywgetaclocalautomakeautoconfmakegccgcc-c++python-develmysql-develbzip2libffi-develepel-release\ &&yumcleanall #installpython3.7.0 RUNwgethttps://npm.taobao.org/mirrors/python/3.7.0/Python-3.7.0.tar.xz\ &&tar-xvfPython-3.7.0.tar.xz-C/usr/local/\ &&rm-rfPython-3.7.0.tar.xz\ &&cd/usr/local/Python-3.7.0\ &&./configure&&make&&makeinstall #installrelatedpackages RUNyuminstall-ypython-pip\ &&yuminstall-ypython-setuptools\ &&mkdir-m755-p/etc/supervisor/conf.d\ &&yuminstall-ysupervisor\ &&pip3install--upgradepip-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.com\ &&pip3installsetuptools==33.1.1-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.com\ &&pip3installjieba-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.com\ &&pip3installtornado==5.1.1-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.com\ &&yumcleanall #expostport EXPOSE15731
在这个CentOS系统中,我们安装了Python3.7.0,同时又安装了两个第三方模块jieba和tornado。接着我们运行build.sh脚本,内容如下:
TIMENOW=`date+%y.%m.%d.%H%M` #进行docker镜像打包 #-f指定文件,-t指定生成镜像名称,冒号后为版本号,例子:docker_package:17.08.01.1311 dockerbuild-fpython_env.build-tpython_env:${TIMENOW}.
运行后,我们生成的Docker镜像名称为:python_env:19.12.25.0008。
接着我们在Python中使用Docker镜像配置PythonInterpreter。在系统的设置界面中,选择“ProjectInterpreter”,点击“ProjectInterpreter”右侧的小齿轮,选择“Add”,截图如下:
点击“OK”键,等待一会儿,然后弹出的界面如下:
#-*-coding:utf-8-*- #author:Jclian91 #place:PudongShanghai #time:12:04上午 importjieba if__name__=='__main__': sent='三亚的风景很不错,一派南国风光。' print(list(jieba.cut(sent)))
输出结果如下:
本次分享到此结束,感谢大家的阅读。该演示项目已经分享至Github,网址为:https://github.com/percent4/Docker_env_test
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。