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 ...
随机推荐
- Disruptor 高性能并发框架二次封装
Disruptor是一款java高性能无锁并发处理框架.和JDK中的BlockingQueue有相似处,但是它的处理速度非常快!!!号称“一个线程一秒钟可以处理600W个订单”(反正渣渣电脑是没体会到 ...
- Pop!_OS安装与配置(一):下载安装
Pop!_OS安装过程 0x0 Pop!_OS简介 0x1 下载 0x2 启动盘制作 0x3 重启安装 如何分区 0x4 重启进入Pop!_OS 0x0 Pop!_OS简介 Linux发行版选哪个? ...
- 数据可视化之powerBI基础(十五)Power BI同步切片器,你知道怎么用吗?
https://zhuanlan.zhihu.com/p/67932754 在PowerBI报表中,切片器绝对是最常用的控件了,利用它可以进行各种维度的动态切换,同一个页面中的所有图表可以同步响应:利 ...
- Python3 迭代器深入解析
第6章 函数 6.1 函数的定义和调用 6.2 参数传递 6.3 函数返回值 6.4 变量作用域 6.5 匿名函数(lambda) 6.6 递归函数 6.7 迭代器 6.8 生成器 6.9 装饰器 6 ...
- Ethical Hacking - GAINING ACCESS(4)
SERVER SIDE ATTACKS - METASPLOIT Metasploit is an exploit development and execution tool. It can als ...
- Porter 进入 CNCF 云原生全景图,新版本即将发布!
近日,KubeSphere 社区子项目面向物理机环境的负载均衡器 Porter 正式进入 CNCF Landscape.CNCF Landscape 在云原生实践过程中的每个环节帮助用户了解有哪些具体 ...
- 【软件安装】CentOS7_直播服务搭建_nginx_nginx-http-flv-module
1.介绍 nginx-http-flv-module是在nginx-rtmp-module基础上开发的一个直播模块. 感谢Arut创造了nginx-rtmp-module,它是Nginx的一个优秀的第 ...
- CAS实现SSO 单点登录
结构 CAS分为两部分,CAS Server和CAS Client CAS Server用来负责用户的认证工作,就像是把第一次登录用户的一个标识存在这里,以便此用户在其他系统登录时验证其需不需要再次登 ...
- C踩坑纪实——(一)
最近在项目过程中发现了几个c语言中没有注意到的小细节,成功入坑.下面记录的我遇到的问题,以及解决的方法,希望这个过程能给读者带来些许启发. 字符类型变量的溢出 首先来看下面这段代码,你认为会输出什么呢 ...
- Salt组件(二)
四.配置管理States 是SaltStack中的配置语言,在日常进行配置管理时需要编写大量的States文件.比如我们需要安装一个包,然后管理一个配置文件,最后保证某个服务正常运行.这里就需要我们编 ...