Python环境搭建、python项目以docker镜像方式部署到Linux
Python环境搭建、python项目以docker镜像方式部署到Linux
本文的项目是用Python写的,记录了生成docker镜像,然后整个项目在Linux跑起来的过程:
原文链接:https://msd.misuland.com/pd/3065794831805579512
1、windows中Python环境搭建以及pycharm的安装和配置,用以开发Python项目
这个其实很简单,我从网络上找了一些资源,以下是截图(这块是转的)
(一).python环境的搭建
(1).下载python(这里以python3.6为例)
step 1:打开下载网址:https://www.python.org/downloads/windows/
step 2:我这里选着python3的版本
step 3:选择python的可执行文件安装包
(2).安装python(这里以python3.6为例) step 1:下载完成后就可以安装了,基本傻瓜式安装,不过要强调几点,如下图(python3.6已经可以自动添加环境变量 如果你要安装python2那么你手动配置环境变量,具体方法自行百度,这里不做赘述!)
step 2:安装完成后,我们来检查一下python是否安装成功,打开cmd命令,输入python,回车,若显示类似下图,证明环境搭建完成。
step 3:测试输出hello world,从开始菜单打开python自带的IDE,输入如下代码,然后回车。
至此,我们的python环境搭建完成。
(二).pycharm的安装与配置
(1).pycharm的下载
step 1:打开下载网址:http://www.jetbrains.com/pycharm/
step 2:点击下载按钮。
step 3:专业版是收费的,社区版是免费的,并且社区版新手使用足够,我们这里下载社区版。
(2).pycharm的安装
pycharm的安装依然是傻瓜化安装,基本一路next,这里只强调一点
step 2:接下来是一些按照顺序摆放的配置图片。完成pycharm的基本配置
(4).pycharm的python解释器的搭建
同样,接下来是一些按照顺序摆放的配置图片。完成pycharm的python解释器的搭建
(5).pycharm的建立一个新项目
首先打开pycharm,接下来是一些按照顺序摆放的配置图片。完成pycharm的一个项目创建。
至此,pycharm已经全部安装完成。
pycharm中安装组件的方法:
Python中安装bs4后,pycharm报错ModuleNotFoundError: No module named 'bs4'
如果此时使用pycharm执行代码,在引用bs4 “frombs4 import BeautifulSoup”时还会报错“ModuleNotFoundError: Nomodule named 'bs4'.” 未找到名为bs4的模块,这时需要在Pycharm上安装bs4模块来解决,解决方法如下: 1. File– Setting
Project:Python – Project Interperter
在该页面下会显示执行项目默认的python版本,如图我设置的python版本是python3.6;
还会显示在pycharm上安装的模块,如果执行项目时报错“找不到bs4”,应该是不会显示bs4这个模块的,我安装过,所以会显示。
Install
点击界面右侧的+号,可以打开安装模块界面,在该界面下可以直接搜索并安装相应模块,输入bs4,搜索到对应结果,选择安装模块。
安装完成
安装完成后在界面下方会提示“Package‘bs4’ install successfully”
2、Linux中Python3环境搭建
下载与解压,我这边对应的Python项目所需要的版本,装的是3.7.2
[root@localhost ~]#wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
[root@localhost ~]#tar -xzvf Python-3.7.2.tgz
然后重命名解压后的文件夹为python3
Python环境搭建成功
3、Python项目Dockerfile准备
我的Python项目结构如下:
平时在pycharm里面运行该工程,只要直接运行job.py文件即可。目标是把Python项目放到Linux系统,以docker镜像方式使用容器启动。
4、cmd进入py项目目录,通过pip命令,生成整个Python项目所需要的环境的包放到requirements.txt
#在当前目录把Python所依赖的组件,列在requirements.txt文件中
pip freeze > requirements.txt
生成后的requirements.txt内容如下:
5、建立上传到Linux系统的目录,含有原py项目目录,以及Dockerfile
我的做法是,是在workspace中,建一个专门的目录docker_py
进入docker_py,可以看到py项目和Dockerfile文件,py项目是拷贝过来的
然后把docker_py目录打zip包,上传至Linux,至于Dockerfile的内容,建议不要在windows编辑,因为在windows编辑,会带有windows的符号,直接在Linux在编辑,或者整个Dockerfile文件也在Linux环境在通过touch方式建立,再编写也OK。
通过命令
rz
上传 docker_py.zip 到 /data/docker/py_app 目录,然后把zip解压到当前目录
unzip docker_py.zip
进入docker_py,编写Dockerfile内容
#基于的基础镜像
FROM python:3.7
#代码添加到code文件夹,后面可以通过进入容器中看的
ADD ./py /code
# 设置code文件夹是工作目录
WORKDIR /code
# 安装支持
RUN pip install -r requirements.txt
#当容器启动时,使用python3执行指定路径的py脚本
CMD ["python3", "/code/venv/Include/job.py"]
6、Linux中把Dockerfile生成镜像
Linux进入docker_py目录,然后docker方式生成镜像
# py_app为创建的镜像名称,. 表示以当前目录的内容生成(docker_py)
docker build -t py_app:2 .
看到上面截图,则镜像构建成功,我们校验一下:
docker images
看到py_app镜像已经成功了
7、Linux中docker_compose方式执行镜像,到Python项目跑起来
进入py_app目录,新建 docker-compose.yml 文件
py:
image: py_app:2
ports:
- "8090:9060"
restart: always
docker-compose.yml编排文件中,image需要与前面构建的镜像名称和版本一致,然后启动项目
[root@localhost py_app]# docker-compose up -d py
至此,搞定了
8、解释下前面Dockerfile设定的工作目录,可以进入容器看
根目录即是code了
Python环境搭建、python项目以docker镜像方式部署到Linux的更多相关文章
- Centos系统Python环境搭建和项目部署
目录 一.Python 1. 源安装 Python3 2. SCL安装 Python3 3. 虚拟环境venv 4. 安装Flask 5. 安装gunicorn 二.安装Nginx 1. 安装Ngin ...
- Python简单介绍以及Python环境搭建(入门1)
转载请标明出处: http://www.cnblogs.com/why168888/p/6400694.html 本文出自:[Edwin博客园] Python 简单介绍 适合领域: Web网站和各种网 ...
- Python环境搭建-3 Python下载
python环境搭建 Python是一个跨平台.可移植的编程语言,因此可在windows.Linux和Mac OS X系统中安装使用. 安装完成后,你会得到Python解释器环境,可以通过终端输入py ...
- Docker DevOps实战:Docker+Jenkins+Python+Pytest+Allure(1)- 创建Jenkins容器、安装Python环境、安装项目依赖类库、安装Allure报告插件
前言: 本文实操笔记参照菠萝笔记,安装过程中的坑大家可以参考下 创建Jenkins容器 # 下载Jenkins镜像 [root@localhost ~]# docker pull jenkins/je ...
- Python学习第一弹——Python环境搭建
一.Python简介: Python,是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.Python语法简洁而清晰,具有 ...
- Python环境搭建(windows)
Python环境搭建(windows) Python简介 Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/),是一种面向对象.直译式计算机编程语言,具有近二十年的发展历史,成 ...
- selenium win7+selenium2.0+python环境搭建
win7+selenium2.0+python环境搭建 by:授客 QQ:1033553122 步骤1:下载python 担心最新版的支持不太好,这里我下载的是python 2.7(selenium之 ...
- 第一章:起步(python环境搭建)
Python 环境搭建 学习python的第一步,就是要学习python开发环境的配置,在配置好python开发环境后,你需要再安装一款比较趁手的编辑器,事实上,python解释器本身就可以进行一些编 ...
- Python基础入门(1)- Python环境搭建与基础语法
Python编程环境搭建 Python环境搭建 官网下载:https://www.python.org/ python --version PyCharm下载安装 安装 官网下载:https://ww ...
随机推荐
- day62 django入门(3)
目录 一.无名有名分组的反向解析 1 无名分组的反向解析 2 有名分组的反向解析 二.路由分发 三.名称空间(了解) 四.伪静态(了解) 五.虚拟环境(了解) 六.django版本区别 1 url的区 ...
- 数据可视化之PowerQuery篇(十五)如何使用Power BI计算新客户数量?
https://zhuanlan.zhihu.com/p/65119988 每个企业的经营活动都是围绕着客户而开展的,在服务好老客户的同时,不断开拓新客户是每个企业的经营目标之一. 开拓新客户必然要付 ...
- Python爬虫学习02--pyinstaller
Python爬虫学习02--打包exe可执行程序 1.上一次做了一个爬虫爬取电子书的Python程序,然后发现可以通过pyinstaller进行打包成exe可执行程序.发现非常简单好用 2.这是上次写 ...
- 机器学习实战---决策树CART简介及分类树实现
https://blog.csdn.net/weixin_43383558/article/details/84303339?utm_medium=distribute.pc_relevant_t0. ...
- 计算机网络学习socket--day3
1.REUSEADDR(地址重复利用) 1.REUSEADDR解决服务器关闭后重新绑定地址,在day3中知道服务器端必须绑定地址 2.服务器端尽可能使用REUSEADDR 3.在绑定之前尽可能调用se ...
- python利用difflib判断两个字符串的相似度
我们再工作中可能会遇到需要判断两个字符串有多少相似度的情况(比如抓取页面内容存入数据库,如果相似度大于70%则判定为同一片文章,则不录入数据库) 那这个时候,我们应该怎么判断呢? 不要着急,pytho ...
- 如何在项目中封装api
一般在项目中,会有很多的api请求,无论在vue,angular,还是react中都应该把接口封装起来,方便后期的维护. 1.新建一个api文件 我们可以在项目的分目录下创建一个api文件夹,在这里面 ...
- C++11多线程编程--线程创建
参考资料 adam1q84 我是一只C++小小鸟 Thread support library Book:<C++ Concurrency in Action> 线程的创建 线程的创建有多 ...
- Ethical Hacking - GAINING ACCESS(18)
CLIENT SIDE ATTACKS Backdooring ANY file Combine backdoor with any file - Generic solution. Users ar ...
- Python Ethical Hacking - Malware Analysis(4)
DOWNLOAD_FILE Download files on a system. Once packaged properly will work on all operating systems. ...