iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >docker虚拟化之订制python环境
  • 733
分享到

docker虚拟化之订制python环境

订制环境docker 2023-01-31 06:01:22 733人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

前面我们讲了python爬虫用到的工具及模块:phantomjs、beautifulsoup4、selenium、lxml等,如果我们想随时随地用到这个已经搭建好的python环境,这就有两个方案:一是利用vagrant打包Pyt

前面我们讲了python爬虫用到的工具及模块:phantomjs、beautifulsoup4、selenium、lxml等,如果我们想随时随地用到这个已经搭建好的python环境,这就有两个方案:一是利用vagrant打包Python环境的box;二是创建一个python环境的Docker镜像。

在此我们介绍下第二种方案,我们利用dockerfile直接创建docker镜像即可,当然前提是你能运行docker环境。

我们使用的是ubuntu16.04
1.安装docker

wget -qO- https://get.docker.com/ | sh

2.创建目录并创建python需要安装的模块

mkdir -p /docker/python
vim requirements.txt
beautifulsoup4
lxml
Selenium

3.创建Dockerfile文件

FROM ubuntu
MaiNTAINER yanggd
RUN mkdir -p /app
WORKDIR /app
ADD requirements.txt requirements.txt
RUN apt-get update \
    #安装phantomjs依赖
    && apt-get install -y build-essential g++ flex bison gperf ruby perl libsqlite3-dev libfontconfig1-dev libicu-dev libfreetype6 libssl-dev libpng-dev libjpeg-dev libx11-dev libxext-dev python wget vim\
    #安装最新版本pip
    && wget -O /tmp/get-pip.py 'Https://bootstrap.pypa.io/get-pip.py' \
    && python /tmp/get-pip.py \
    && rm /tmp/get-pip.py \
    #安装python模块beautifulsoup4 selenium lxml
    && pip install -r requirements.txt \
    && wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 -O /tmp/phantomjs.tar.bz2 \
    && tar -jxvf /tmp/phantomjs.tar.bz2 -C /usr/local/ \
    && ln -s /usr/local/phantomjs-2.1.1-linux-x86_64 /usr/local/phantomjs \
    && rm /tmp/phantomjs.tar.bz2 \
    #安装python模块Mysqldb
    && apt-get install -y python-dev libmysqlclient-dev \
    && pip install MySQL-python

注意:
(1)安装python mysqldb连接数据模块时,一定要安装python-dev libmysqlclient-dev,否则会出现mysql_config等错误;可以避免先安装 mysql的麻烦。
(2)dockerfile中的ADD COPY命令是添加当前目录下的文件到docker中的当前目录WORKDIR /app 下;另外若添加的是tar.gz等压缩文件时,会在docker中被认为是一个目录,而不是压缩文件,因此不可以在后续命令中用tar解压;但是wget的tar.gz会被认为是压缩文件,可以用tar解压

4.建立镜像

docker build -t ubuntu/python2.7 .

“.”表示Dockerfile所在当前目录,这样我们就创建了一个ubuntu/python2.7镜像

root@test ~/docker/python# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu/python2.7    latest              794e1613fe03        7 hours aGo         741.2 MB
mysql               latest              b7dc06006192        2 weeks ago         385.6 MB
python              2.7                 4c5f5839b372        3 weeks ago         675.3 MB
ubuntu              latest              bd3D4369aebc        3 weeks ago         126.6 MB

创建完成后我们就可以在docker中编写python爬虫了:

docker run -it ubuntu/python2.7 /bin/bash

注意:
此时虽然安装了python爬虫的基础环境,但是有的工具默认是没有安装的如wget ping 等,我们在docker中安装这些工具后一定要docker commit下,否则退出docker重新登陆后,原来安装的工具就不存在了,需要重新安装,是多么蛋疼的啊。

总结
虽然我们可以直接基于python:2.7镜像建立一个适合我们用的python环境,而且相对于ubuntu镜像建立更加轻量,但是毕竟python:2.7基础只有python,无法安装phantomjs工具及依赖,这我已经测试
当然我们也可以通过vagrant的box来随时搭建python环境,但是这相对与docker比较重量级,见仁见智吧。

--结束END--

本文标题: docker虚拟化之订制python环境

本文链接: https://www.lsjlt.com/news/189761.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • docker虚拟化之订制python环境
    前面我们讲了python爬虫用到的工具及模块:phantomjs、beautifulsoup4、selenium、lxml等,如果我们想随时随地用到这个已经搭建好的python环境,这就有两个方案:一是利用vagrant打包pyt...
    99+
    2023-01-31
    订制 环境 docker
  • python 之 virtualenv 虚拟环境
    最近需要使用virtualenv,查了下资料总结记录下。 virtualenv是Python的一个工具,用于创建独立的Python环境。它允许你在同一台计算机上同时管理多个独立的Python环境,每个环境都可以有自己的包依赖和Pyth...
    99+
    2023-09-05
    python virtualenv 开发语言
  • python虚拟环境管理之virtual
    虚拟环境的作用 使python环境拥有独立的包,避免污染原本的python环境。为不同的项目创建不同的环境可以避免安装的库过于庞大和相互干扰。 例如你想在同一台机器上开发用python2和python3写的2个项目就可以用虚拟环境进行隔离...
    99+
    2023-01-30
    环境管理 python virtual
  • python虚拟环境
    好久没写博客了,小伙伴们最近在干嘛呢? 最近在搞AI开放平台,就类似腾讯优图,百度人工智能平台~~. 说得是很高大上啦,核心技术的算法并不是我写的。我负责搞API接口,写前端。 前端的Vue和Bootstrap,两门技术是目前前端比较流利...
    99+
    2023-01-30
    环境 python
  • python虚拟环境:envirtua
    https://www.jianshu.com/p/08c... virtualenv 虚拟环境是在Python解释器上的一个私有复制,你可以在一个隔绝的环境下安装packages,不会影响到你系统中全局的Python解释器。 虚拟环境非...
    99+
    2023-01-31
    环境 python envirtua
  • Ubuntu python虚拟环境
    建立虚拟环境 首先更新ubuntu源 $ sudo apt-get update 安装python3-venv模块 $ sudo apt-get install pyton3-venv 建立虚拟环境 $ python3 -m venv [...
    99+
    2023-01-31
    环境 Ubuntu python
  • python venv 虚拟环境
    第一步建立 python 新项目 如 py_demo 进入 py_demo 下 创建虚拟环境文件夹 venv 进入 venv 执行 python -m venv . 即可创建python 虚拟环境 在venv S...
    99+
    2023-09-24
    python 开发语言 Powered by 金山文档
  • python虚拟环境virtualenv
    我们在Windows下开发python应用时,可能需要安装各种第三方模块,但如果又不想污染公共的python环境,怎么办呢?最好是在各自的 python工程中创建一个virtualenv虚拟环境。博主最近需要在虚拟环境中安装MySQL-py...
    99+
    2023-01-31
    环境 python virtualenv
  • python虚拟环境 | virtual
              一.创建virtualenv虚拟环境 mkvirtualenv -p 版本号 虚拟名 mkvirtualenv -p python3 env_1   python3:版本号   env_1: 虚拟环境名称 创...
    99+
    2023-01-30
    环境 python virtual
  • python的虚拟环境
    什么是虚拟环境 python特有的一种软件环境,创建多个python环境,各个环境之间完全隔离,互不影响。它可以用来解决Python项目开发和运行过程中的依赖项和版本问题,而不必和其他项目的Python环境以及全局的Python环境发生冲...
    99+
    2023-01-31
    环境 python
  • python虚拟环境(Mac)
    一、安装虚拟环境 virtualenv 安装 virtualenv sudo pip3 install virtualenv 通过pip3 安装(默认安装在/usr/local/bin 路径下) su...
    99+
    2023-09-10
    python macos 开发语言
  • 新手容易懵之—Python虚拟环境
    [简单说明一下pyenv、venv(pyvenv)、virtualenv之间的区别,新手容易懵,自己已近踩过坑了,>_<# ] 最近学习Flask开发框架,看官方文档建议安装virtualenv来搭建虚拟环境进行学习和...
    99+
    2023-01-31
    新手 环境 Python
  • Python之虚拟环境venv实战详解
    目录 简介虚拟环境实战创建虚拟环境激活虚拟环境虚拟环境测试停止虚拟环境 小结 简介     Python 应用程序通常会使用不属于标准库的包和模块。应用程序有时需要特定版本的...
    99+
    2023-09-05
    1024程序员节 python venv
  • Python Anaconda创建虚拟环境及Pycharm使用虚拟环境
    目录 前言 一、Anaconda与Pycharm 二、conda常用命令 三、Pycharm使用虚拟环境 总结 前言         我们在做开发任务时可能会创建多个项目,这些项目可能会依赖于不同的Python环境。比如有的用到Pytho...
    99+
    2023-09-02
    python pycharm conda
  • Python直接复制已有的venv虚拟环境以创建新的虚拟环境
    Python venv创建的虚拟环境复制到其他路径,如何断开与原始虚拟环境的连接,成为一个全新的虚拟环境,且两个虚拟环境之间的更新互不影响? 1.软件环境⚙️2.问题描述🔍3....
    99+
    2023-09-15
    venv 快速创建虚拟环境 pip install
  • python搭建虚拟环境
    1 . 问题:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了.   解决方案 : 虚拟环境 作用 : 虚拟环...
    99+
    2023-01-30
    环境 python
  • 建立 Python 虚拟环境
    1.1 安装依赖包 $ yum -y install wget gcc epel-release git   1.2 安装 Python3.6和pip $ yum -y install python36 python3...
    99+
    2023-01-30
    环境 Python
  • 激活 Python 虚拟环境
    . venv/bin/activate 这是一个激活 Python 虚拟环境的命令。在使用它之前,你需要先安装一个 Python 虚拟环境,并在虚拟环境中安装你需要的 Python 包。这样可以避免多个 Python 项目之间的依赖冲突。如...
    99+
    2023-09-29
    python linux 开发语言
  • python 虚拟环境详解
    目录pipenv 工作流1 .安装2.创建虚拟环境3.管理依赖4.pycharm设置虚拟环境总结pipenv 工作流 Pipenv是基于pip的Python包管理工具,它和pip的用...
    99+
    2024-04-02
  • 【Python】搭建虚拟环境
    目录 前言 虚拟环境简介 虚拟环境依赖模块的安装 1、安装好Python环境 2、安装第三方库(虚拟环境库) 3、 安装第三方模块virtualenvwrapper-win 为虚拟环境配置环境变量 1、配置环境变量 2、点击环境变量 3、...
    99+
    2023-09-08
    python 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作