tornado--02開發環境搭建

開發環境

ubuntu16.04.2

  1. 開機命令行啟動:
  1. 在圖形桌面打開虛擬終端:sudo systemctl set-default multi-user.target
  2. 啟動到桌面:sudo systemctl start lightdm
  3. 恢復桌面啟動: systemctl set-default graphical.target
  1. 命令行修改默認語言:sudo vi /etc/default/locale ,改后重啟主機。
 LANG="en_US.UTF-8"
 LANGUAGE="en_US:en"
  1. 改變IP地址為靜態:(我在VM中使用nat網絡,所以網關和DNS為同一個)
  1. 通過 ifconfigroute -n 命令,查看本機網卡接口,地址,和網關。

  2. sudo vi /etc/network/interfaces, 追加以下代碼:

    auto ens33
    iface ens33 inet static
    address 192.168.128.140        #分配的地址
    gageway 192.168.128.2        #查詢到的網關
    netmask 255.255.255.0
    dns-nameservers 192.168.128.2 #DNS 解析
    
  3. 重啟網絡服務:sudo /etc/init.d/networking restart

  1. SSH連接:
  1. 更新軟件:sudo apt-get update
  2. 安裝ssh: sudo apt-get install openssh-server
  3. 開啟服務:sudo service ssh start ,查看 服務狀態:sudo service ssh status

python服務器環境

  • 安裝步驟: python2.7 --> python 2.7 包管理工具 --> python 隔離運行環境。
  • python 版本:2.7

    which python
    python -V #確認處理是2.7.12,否則安裝:
    #sudo apt-get install python2.7
    #ln -s /usr/bin/python2.7 /usr/bin/python
    
  • 安裝包管理工具 setuptools。作用:簡單的創建和分發Python包,特別是擁有依賴關系。

    sudo apt-get install -y python-setuptools

  • 安裝包管理工具pip

    wget https://bootstrap.pypa.io/get-pip.py  --no-check-certificate  #pip,python安裝腳本
    sudo python get-pip.py
    
  • 通過配置文件,更改pip源地址為國內鏡像

    配置文件需要手動建議,存放位置:~/.pip/pip.conf,或 ~/.config/pip/pip.conf,或/etc/pip.conf

    [list]
    format = columns
    [global]
    trusted-host = mirrors.aliyun.com
    index-url = http://mirrors.aliyun.com/pypi/simple
    # 或是豆瓣源。
    #trusted-host = pypi.douban.com
    #index-url = http://pypi.douban.com/simple
    
  • 安裝virtualenv 和 virtualenvwrapper, 用來創建一套“隔離”的Python運行環境.

    • 安裝命令:sudo apt-get install python-virtualenv ,和 sudo easy_install virtualenvwrapper

    • 配置系統環境變量,調用命令來操作python虛擬運行環境

      1. 創建 虛擬環境存放 的目錄: mkdir $HOME/.virtualenv

      2. 創建全局變量 WORKON_HOME,執行擴展包腳本,讓操作虛擬環境更加便捷。

        # ~/.bashrc 追加:
        export WORKON_HOME=$HOME/.virtualenv
        source /usr/local/bin/virtualenvwrapper.sh
        # 添加后, source ~/.bashrc
        
      3. 生成虛擬環境:mkvirtualenv [環境名字] ,可選參數: -p python_version 指定環境使用python版本。

      4. 切換虛擬環境:workon [環境名字],如不跟環境名字,查看當前環境。

      5. 退出虛擬環境:deactivate

      6. 刪除虛擬環境:rmvirtualenv [環境名字]

    • 最大打開文件數,epoll模式性能參數之一,cat /proc/sys/fs/file-max

安裝Tornado

  • sudo pip install tornado

安裝mysql

  • 需要安裝服務端,客戶端,客戶端開發包

    sudo apt-get install mysql-server #安裝時,需要創建數據庫根帳號root的密碼。這里我設 sincethen
    sudo apt-get install mysql-client
    sudo apt-get install libmysqlclient-dev
    
  • 查看mysql開機啟動服務,

    sudo apt-get install sysv-rc-conf #sysv-rc-conf 開機服務管理
    sudo sysv-rc-conf  #連接ubuntu的窗口要大。查找mysql
    sudo /etc/init.d/mysql status #查看mysql 運行狀態,start, stop ,restart
    sudo netstat -apn |grep mysql #查看mysql 是否在監聽著端口
    
  • 修改mysql 存儲的編碼

    • 編輯mysql配置文件:/etc/mysql/my.cnf

      [client]         #客戶端字符編碼
      default-character-set=utf8
      
      [mysqld]        #服務端字符編碼
      character-set-server=utf8
      collation-server=utf8_general_ci
      
  • 查看mysql 字符編碼

    • 連接 mysql 服務端: mysql -u root -p ,輸入之前創建時,設置的 root密碼。

    • 查看字符編碼。配置修改后,需要重啟服務讀取配置文件。sudo /etc/init.d/mysql restart

      mysql> show variables like '%char%';
      +--------------------------+----------------------------+
      | Variable_name            | Value                      |
      +--------------------------+----------------------------+
      | character_set_client     | utf8                       |
      | character_set_connection | utf8                       |
      | character_set_database   | utf8                       |
      | character_set_filesystem | binary                     |
      | character_set_results    | utf8                       |
      | character_set_server     | utf8                       |
      | character_set_system     | utf8                       |
      | character_sets_dir       | /usr/share/mysql/charsets/ |
      +--------------------------+----------------------------+
      8 rows in set (0.02 sec)
      
      mysql> show variables like '%colla%';
      +----------------------+-----------------+
      | Variable_name        | Value           |
      +----------------------+-----------------+
      | collation_connection | utf8_general_ci |
      | collation_database   | utf8_general_ci |
      | collation_server     | utf8_general_ci |
      +----------------------+-----------------+
      3 rows in set (0.00 sec)
      
    • 創建數據庫時,指定默認字符。create database DATABASE_NAME default character set utf8

  • redis數據庫

    • 安裝:sudo apt-get install redis-server
    • 啟動服務端: redis-server
    • 啟用客戶端:redis-cli

pycharm,連接服務器開發環境

  • 安裝pycharm ,這里不多做介紹。

  • 創建python項目pytndo 。(file-->new project) ,存放路徑為本地:E:/pytndo

  • 本地所有項目編碼默認設置,設置為utf-8。

    路徑:File文件 --> Setting設置-->Editor編輯器-->File Encoding文件編碼 下的IDE Encoding 和 Project Encoding 值 改為utf-8.

  • 代碼同步。將本地項目與遠程服務器項目關連,更新文件后自動上傳。

    1. 配置路徑:File-->Settings --> Build,Execution,Deployment--> Deployment 。選項:Connection,Mappings.
    2. 在關連前,我們需要確認條件:本地項目目錄(E:/pytndo) 和 服務器項目同步目錄 (假設為:/home/cpdl/pytndo).
    3. 在配置路徑下,點擊“+” 號,創建連接名稱,類型為SFTP.
    4. Connection配置:填寫服務器遠程SSH連接設置,包括 地址 登陸用戶名和密碼。注意選中保存密碼,并測試 SFTP連接 正常(“Test SFTP connection...”)。
    5. Mappings 配置,同步目錄設置。 本地項目目錄 (E:/pytndo), 遠程項目同步目錄(/home/cpdl/pytndo).
    6. 設置 本地項目文件 保存時,自動同步到服務器目錄。配置路徑 :Tools-->Deployment-->Options 下的Upload changed files automatically to the default server 文件修改后對服務器文件操作:On explicit save action(Ctrl+s).
    7. 至此,使用pycharm 編輯項目時,代碼會自動同步到服務項目中。但是,由于編程環境和語言使用的版本可能不一致,下面同步使用服務器編程環境。
pycharm同步.png
  • 編程環境同步。讓本地編程工具調用服務器語言編程環境。

    1. 在服務器中創建虛擬python 運行環境。

    2. 獲取虛擬環境運行python命令執行的程序文件。

      mkvitrualenv tnd_1  #創建環境tnd_1
      workon tnd_1        #使用環境
      which python        #獲取此環境下python命令執行的程序文件。
      /home/cpdl/.virtualenvs/tnd_1/bin/python
      
    3. 在pycharm中配置:File-->Settings-->Project:pytndo-->Project Interpreter ,添加 項目使用的遠程環境。在左側顯示的齒輪上,選擇Add Remote 。彈出窗口中,添加 SSH Credentials連接,其中 Python interpreter path: 要填上步獲取到的python執行文件。

環境同步.png
  • 使用pycharm編程工具 調用SSH 命令 ,來遠程連接服務器。

    配置路徑:tools-->start ssh session..-->Edit credentials.. ,添加SSH連接,或使用之前建立的SSH連接。

服務器虛擬環境包管理

  • 查看虛擬python環境包安裝情況:

    workon tnd_1                #進入tnd_1
    pip install --upgrade pip    #更新pip管理軟件
    pip list                    #查看安裝的python軟件包
    #大致上,可能需要安裝:tornado, SQLAlchemy ,redis, PyMySQL,Pillow 等。
    pip install tornado            #安裝tornado
    

附加瀏覽器知識

  • 服務器curl : sudo apt-get install curl

  • chrome緩存處理:

    Ctrl+Shift+Del  清除Google瀏覽器緩存的快捷鍵
    Ctrl+Shift+R  重新加載當前網頁而不使用緩存內容
    

這一節,沒多少要記的知識,主要是開發環境的搭建,跟著步驟建,即可。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,835評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,676評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,730評論 0 380
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,118評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,873評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,266評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,330評論 3 443
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,482評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,036評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,846評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,025評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,575評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,279評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,684評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,953評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,751評論 3 394
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,016評論 2 375

推薦閱讀更多精彩內容

  • 背景 CTFd是時下比較流行的CTF平臺,其安裝和部署也是比較容易。雖然facebookCTF界面夠炫夠酷...
    我就看看不想寫閱讀 2,684評論 1 1
  • 一、文件/文件夾管理 ls 列出當前目錄文件(不包括隱含文件) ls -a 列出當前目錄文件(包括隱含文件) ls...
    會飛的魚Coo閱讀 4,553評論 1 23
  • 一、文件/文件夾管理 ls 列出當前目錄文件(不包括隱含文件)ls -a 列出當前目錄文件(包括隱含文件)l...
    路癡千行閱讀 2,411評論 0 5
  • 回想 自己一本書都沒讀 又會后悔 又會想怎樣 問題都是在實踐中產生的
    Ace_策閱讀 76評論 0 0
  • 有時候,我們很容易掉進一根筋的陷阱,從而鉆了牛角尖。人們常說思維要靈活,就是說盡量不要固執己見。 我就經常受到這樣...
    福爾摩星閱讀 899評論 0 1