在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用Vagrant搭建python開發環境的實例講解

馬哥Linux運維 ? 來源:未知 ? 2019-08-03 11:20 ? 次閱讀

入職就趕緊投入開發,別費時間搭開發環境。——編程三分鐘”

每每新同事入職,都要在自己電腦上配置一堆環境,費神費力;每每開發測試都要重新配置開發環境,手工搭建,步驟很繁瑣,極易出錯。

大神在時,大神搭建,大神不在,以手撫膺坐長嘆。為此,VVVVVagrant橫空出世!??!

虛擬機編排工具Vagrant

他,基于虛擬機,能打造出完美的物理隔離!

他,一次搭建,處處使用,拷貝一個鏡像就能讓新員工立即投入開發,當屬老板的最愛!

他,只需要一個文本,寥寥幾行,就能駕馭網絡配置、建立集群!

良好的第三方支持也讓他如魚得水,支持shell腳本、支持ansible自動部署等等。他就是我們的主角Vagrant。

這次,我們就以搭建python開發環境為例,享受vagrant給我們帶來的便利。

安裝

mac環境兩行命令

brewcaskinstallvirtualboxbrewcaskinstallvagrant

其他環境下載兩個安裝包即可vagrant包 https://www.vagrantup.com/downloads.htmlvirtualbox https://www.virtualbox.org/wiki/Downloads

檢查是否安裝成功

$vagrantversionInstalledVersion:2.2.5LatestVersion:2.2.5You'rerunninganup-to-dateversionofVagrant!

初始化環境

第一種下載鏡像的方法

vagrantboxadd--providervirtualboxcentos/7

其中--provider virtualbox代表校驗是否是virtualbox官方提供第二種下載方法

vagrantboxadd--namecentos/7--providervirtualbox/Users/pzqu/Documents/code/test/vbox/centos_virtualbox.box

此處的/Users/pzqu/Documents/code/test/vbox是我的選定的下載目錄

對box的一系列操作命令文檔見這里https://www.vagrantup.com/docs/cli/box.html。

初始化

cd/Users/pzqu/Documents/code/test/vboxvagrantinitcentos/7

此時目錄下會生成一個Vagrantfile文件,此文件就是自動化配置的關鍵

https://www.vagrantup.com/docs/vagrantfile/

看一看里面的注釋大概就知道怎么寫了,主要是ruby的語法,可以掛載本地目錄到虛擬機里,配置網絡(接入公網、僅虛擬機訪問都可以)等。

除了對虛擬機進行一些配置外,還可以通過各類Provisioner自動化地安裝軟件、調整配置。詳見 https://www.vagrantup.com/docs/provisioning/

我的配置比較簡單,使用centos/7的系統,把本機代碼項目的目錄掛載到/data/code目錄就可以了。

啟動虛擬機以后直接在虛擬機里安裝開發環境,最后再打成鏡像就妥了。

配置如下

Vagrant.configure("2")do|config|config.vm.box="centos/7"config.vm.synced_folder"/Users/pzqu/Documents/code/gerrit","/data/code"end

掛載文件目錄的時候報錯

安裝此插件即可

vagrantplugininstallvagrant-vbguest

搭建開發環境

在Vagrantfile所在目錄下,使用vagrant up啟動虛擬機再用vagrant ssh登陸虛擬機

然后執行以下命令自動安裝我們想要的python環境,注意requirements.txt是python項目自動生成的

pipinstall-rrequirements.txt

補充:自動生成requirements文件的方法

pipfreeze>requirements.txt

配置pycharm

打開配置,添加插件

配置Vagrant環境

指定虛擬機中的Python路徑,第一步選 show all

選擇Vagrant選擇鏡像目錄與虛擬機中python路徑

配置啟動方式,這里我生成swagger,主要是Python interpreterpython路徑,Working direftory項目路徑(注意是虛擬機中映射的路徑,我這里在上一節配置的/data/code,我們在本地開發的時候會自動同步修改)

運行

導出box鏡像文件給別人使用

1.運行 vboxmanage list vms 命令,可以看出我們的vagrant下的虛擬機列表(我的虛擬機只有一個box,“vbox_default_1563884434349_3918“。)

$vboxmanagelistvms"vbox_default_1563884434349_3918"{59864f0b-9731-4839-baa2-95d9a6aab731}

導出box鏡像先關機,再導出。vagrant package是導出box的打包命令

vagrantpackage--basevbox_default_1563884434349_3918--outputcentos7_hanah_environment.box

--base代表本地vbox_default_1563884434349_3918是你要導出的box的名稱--output代表導出centos7_hanah_environment.box表示導出后的box名為centos7_hanah_environment.box,并保存在當前目錄下

接下來你會看到如下內容,就是導出成功了

$vagrantpackage--basevbox_default_1563884434349_3918--outputcentos7_hanah_environment.box==>vbox_default_1563884434349_3918:ExportingVM...==>vbox_default_1563884434349_3918:Compressingpackageto:/Users/pzqu/Documents/code/test/vbox/centos7_hanah_environment.box

喝完一瓶奶的功夫就完成了,這取決于你的box的大小,我的box大約900M。這下直接發給你的朋友,一句命令就獲得了一個和你完全相同的開發/測試環境。

$vagrantboxaddcentos7_hanah_environment./centos7_hanah_environment.box==>box:Boxfilewasnotdetectedasmetadata.Addingitdirectly...==>box:Addingbox'centos7_hanah_environment'(v0)forprovider:box:Unpackingnecessaryfilesfrom:file:///Users/pzqu/Documents/code/test/vbox/centos7_hanah_environment.box==>box:Successfullyaddedbox'centos7_hanah_environment'(v0)for'virtualbox'!

vagrant box add 別名 box名

其他想法

聽起來vagrant所做的這些事情和docker有很多重疊的地方,為什么不直接用docker來做呢?不僅可以一秒啟動一個最適合的環境,而且又輕量又純凈。

權衡利弊,vagrant本身并不是虛擬化技術,要把他跑起來還要安裝virtualbox等虛擬化平臺,他更像是虛擬機的外掛程序、編排工具;針對的是批量虛擬機的管理,常常用于瞬間創建一個開發環境。

而docker本身就是虛擬化技術,構建迅速,不占用資源;針對的是應用程序的編排,常常用于統一開發環境與生產環境。

說來說去,與其說是vagrant與docker,不如說使用是虛擬化平臺與容器之間的區別。

docker還是依賴于系統內核,如果內核不同,需要重新構建。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 內核
    +關注

    關注

    3

    文章

    1372

    瀏覽量

    40290
  • 虛擬機
    +關注

    關注

    1

    文章

    917

    瀏覽量

    28196
  • python
    +關注

    關注

    56

    文章

    4797

    瀏覽量

    84689

原文標題:和重復搭建開發環境說 Bye Bye 之Vagrant

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    python環境搭建指南

    python 基礎(一)環境搭建
    發表于 07-30 14:13

    macOS搭建Python的Oracle開發環境

    macOS搭建Python的cx_Oracle開發環境
    發表于 05-13 12:45

    1.2 Python 開發環境搭建

    1.2 Python 開發環境搭建理論上只需要你安裝了 CPython 解釋器后,就可以開始寫 Python 代碼了。為了讓你的在寫代碼時
    發表于 02-16 18:29

    Dragonboard 410c Python交互設計——如何搭建PyQt環境

    Python是一個非常容易上手和使用的語言,非常適合開發者快速的搭建和實現自己ideal原型,在開發中,可以通過Python快速的
    發表于 02-13 10:32 ?1670次閱讀
    Dragonboard 410c <b class='flag-5'>Python</b>交互設計——如何<b class='flag-5'>搭建</b>PyQt<b class='flag-5'>環境</b>

    本地搭建Python Web的開發測試環境過程詳解

    最近想嘗試一下在IBM Bluemix上使用Python語言創建Web應用程序,所以需要在本地搭建Python Web的開發測試環境。 關于
    發表于 12-12 08:50 ?4902次閱讀

    如何學習PythonPython編程環境搭建詳細說明

    本文檔的主要內容詳細介紹的是如何學習Python?Python編程環境搭建詳細說明。
    發表于 04-26 08:00 ?25次下載
    如何學習<b class='flag-5'>Python</b>?<b class='flag-5'>Python</b>編程<b class='flag-5'>環境</b><b class='flag-5'>搭建</b>詳細說明

    python開發環境搭建步驟

    在正式學習Python編程之前,要先安裝Python,這包括“標準Python”、“第三方Python包”、“Python程序
    的頭像 發表于 05-05 22:23 ?3121次閱讀
    <b class='flag-5'>python</b><b class='flag-5'>開發</b><b class='flag-5'>環境</b><b class='flag-5'>搭建</b>步驟

    如何在Linux環境下實現Python環境搭建

    本文檔的主要內容詳細介紹的是如何在Linux環境下實現Python環境搭建
    發表于 08-24 12:12 ?14次下載
    如何在Linux<b class='flag-5'>環境</b>下實現<b class='flag-5'>Python</b><b class='flag-5'>環境</b>的<b class='flag-5'>搭建</b>

    python的經典實例相關講解

    本文檔的主要內容詳細介紹的是python的經典實例相關講解
    發表于 03-02 15:33 ?9次下載

    1.2 Python 開發環境搭建

    1.2 Python 開發環境搭建 理論上只需要你安裝了 CPython 解釋器后,就可以開始寫 Python 代碼了。為了讓你的在寫代碼
    的頭像 發表于 02-15 17:16 ?1468次閱讀
    1.2 <b class='flag-5'>Python</b> <b class='flag-5'>開發</b><b class='flag-5'>環境</b>的<b class='flag-5'>搭建</b>

    【手把手教程】使用Sublime搭建的C/Python環境

    一文介紹使用Sublime搭建輕量級的C語言編程環境Python編程環境
    的頭像 發表于 07-10 21:14 ?3749次閱讀
    【手把手教程】使用Sublime<b class='flag-5'>搭建</b>的C/<b class='flag-5'>Python</b><b class='flag-5'>環境</b>

    關于RISC-V MCU開發實例(一):環境搭建

    關于RISC-V MCU開發實例:咱們以CSM32RV20的開發環境搭建為例子,我們可以參看動能世紀客戶分享的案例情況。
    的頭像 發表于 07-20 14:17 ?2385次閱讀
    關于RISC-V MCU<b class='flag-5'>開發</b><b class='flag-5'>實例</b>(一):<b class='flag-5'>環境</b><b class='flag-5'>搭建</b>

    如何搭建Python編程環境

    Python是一種高級編程語言,被廣泛用于科學計算、數據分析、人工智能、Web開發等領域。想要學習Python編程,首先需要搭建一個合適的編程環境
    的頭像 發表于 04-14 12:07 ?5167次閱讀

    Python環境搭建和LabVIEW中的調用

    本文主要介紹Python相關的環境搭建、Anaconda的使用以及在LabVIEW中調用Python的方法。
    的頭像 發表于 10-13 17:56 ?3162次閱讀
    <b class='flag-5'>Python</b><b class='flag-5'>環境</b><b class='flag-5'>搭建</b>和LabVIEW中的調用

    vagrant下載centos7鏡像

    Vagrant是一款用于構建和管理虛擬開發環境的工具,通過Vagrant,我們可以輕松地搭建與項目開發
    的頭像 發表于 11-23 10:43 ?1044次閱讀
    主站蜘蛛池模板: caobi在线观看| xxxxxhd69日本护士| 亚洲1区2区3区4区| 午夜肉伦伦影院在线观看| 免看乌克兰a一级| 五月激情综合网| 亚洲一区二区三区中文字幕| 久热福利| 狂捣猛撞侍卫攻双性王爷受| 日本www在线观看| 午夜国产精品久久影院| 黄色网在线| 日韩在线网| 午夜视频在线观看完整高清在线 | 亚洲另类电击调教在线观看| 伊人网亚洲| 三级毛片免费| 一级看片| 亚洲一区二区视频| 免费一日本一级裸片在线观看| 天堂网www在线资源链接| 免费观看做网站爱| 久久www免费人成高清| 亚洲午夜视频在线| 亚洲欧洲第一页| 免费看特级淫片日本| 就去色播| 婷婷中文网| 午夜影视在线免费观看| 欧美一区二区三区不卡免费观看| 免费黄色国产视频| 插插插天天| 色色色色网站| 欧美午夜网| 香港三级理论在线影院| 2018天天射| 久久久久激情免费观看| 国产资源站| 69xxxxtube日本免费| 久久黄网站| 欧美激情第一欧美在线|