Flask環境github部署(十三)
(1) github專案搭建
1 連線GitHub
hostnamectl set-hostname flask-dev # 設定 hostname,一般是主機名可以不更改
ssh-keygen # 生成SSH公鑰,一直enter代表不設定密碼
cd .ssh/ #存放祕鑰檔案,id_rsa是私鑰檔案,id_rsa.pub是公鑰檔案
vim id_rsa.pub #編輯祕鑰,全部複製公鑰新增到 賬戶settings >> SSH-keys >> add SSHkeys
2 配置git
git config --global user.email "郵箱" #設定使用者名稱與郵箱,作為標識
git config --global user.name "賬戶名"
vim ~/.gitconfig #新增配置資訊
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
editor = vim
3 配置虛擬環境
pip3 install virtualenv #安裝virtualenv
virtualenv flaskenv #建立flaskenv虛擬環境
source env/bin/activate #啟用虛擬環境
4 安裝flask
pip3 install flask #安裝flask
pip freeze > requirements.txt #在requirements.txt生成當前環境下所需要安裝的python軟體包列表
pip install -r requirements.txt #生成 requirements.txt 檔案,更方便我們去安裝需要的包
deactivate #退出當前的虛擬環境
5 建立github專案
# 讓 Git 忽略對整個 env 目錄和所有 *.pyc 檔案的處理,讓 Git 僅處理自己的程式碼檔案
vim .gitignore
env/
*.pyc
mkdir gitblog #建立專案名
cd gitblog
# 建立 README 檔案
echo "# welcome to why blog! " >> README.md
# 初始化 git 倉庫
git init
# 將剛建立的檔案都加入 git 緩衝區
git add .
# 提交改動檔案到 git 倉庫
git commit -m "first commit"
# 將專案釋出到 github
git remote add origin https://github.com/使用者名稱/blog.git
git push -u origin master
(2) 專案簡單流程
1 專案配置檔案config.py/settings.py
#配置所有環境的基類
class Config:
SECRET_KEY = `JAGAFAjjfdsfdasdas`
SQLALCHEMY_TRACK_MODIFITIONS = False
#測試
class TestingConfig(Config):
SQLALCHEMY_DATABASE_URI = `mysql+pymysql://root:xxx@127.0.0.1:3306/xxxblog`
pass
#開發
class DevelopmentConfig(Config):
SQLALCHEMY_DATABASE_URI = `mysql+pymysql://root:xxx@127.0.0.1:3306/xxxblog`
DEBUG = True
#生產
class ProductionConfig(Config):
SQLALCHEMY_DATABASE_URI = `mysql+pymysql://root:xxx@127.0.0.1:3306/xxxblog`
pass
sqlalchemy通過特殊的URI字串建立資料庫的連線
# database_type+driver://user:password@sql_server_ip:port/database_name
2 建立主啟動檔案manage.py
該檔案是 Flask 應用的核心,也是程式的入口
from flask import Flask
from config import DevelopmentConfig
from flask_script import Manager
app = Flask(__name__)
manager = Manager(app)
# 使用 config.from_object() 而不使用 app.config[`DEBUG`] 是因為這樣可以載入 class DevConfig 的配置變數集合,而不需要一項一項的新增和修改。
app.config.from_object(DevConfig)
# 指定 URL=`/` 的路由規則
@app.route(`/`)
def index():
return `<h1>index</h1>`
if __name__ == `__main__`:
manager.run()
#注意 : 通過 manager.py 來執行命令列是十分有必要的,因為一些 Flask 的擴充套件只有在 Flask app object 被建立之後才會被初始化,所以非常依賴於應用上下
文的環境,在沒有 Flask app object 時,直接執行預設的 Python CLI 會導致
這些 Flask 擴充套件返回錯誤。
3 執行開發伺服器
python manage.py runserver -d -r
python3 當前啟動檔名.py runserver 可選引數
#可選引數如下:
-h 主機名
-p 埠號
--threaded 開啟多執行緒
-d 開啟除錯模式
-r 程式碼修改後重新載入
4 Models與SQLAlchemy
- 在 Web 應用程式開發中引入了 Models 為了 —— 將關係型資料轉化為一個物件型別
- SQLAlchemy 是一個 Python 包,其最底層包裝了對資料庫進入操作的統一介面,然後在最上層提供了物件關係對映(ORM)的實現。
- SQLAlchemy-ORM 可以把大量的不同型別的資料庫中的資料,轉換成 Python 物件的集合。即SQLAlchemy-ORM 可以將對這些資料物件的操作轉化為對資料庫的操作。
- Flask 為我們提供了 Flask SQLAlchemy,其實就是在 SQLAlchemy 上提供了一層包裝,讓 SQLAlchemy 可以結合 Flask 的一些特性來使用。
相關文章
- dockerfile構建flask環境DockerFlask
- Flask基礎環境配置Flask
- 部署Java環境Java
- DockerCompose部署環境Docker
- 藉助Github Page把你的React專案部署到線上環境GithubReact
- Flask框架(一):介紹與環境搭建Flask框架
- flask之旅: 開發前環境準備Flask
- flask筆記:部署flaskFlask筆記
- 使用dockerfile 部署lnmpr環境DockerLNMP
- Nginx部署前端環境(Mac)Nginx前端Mac
- Python3 flask nginx uwsgi 環境搭建PythonFlaskNginx
- Python虛擬環境 flask快速啟動PythonFlask
- Java部署環境搭建(Linux)JavaLinux
- YUM部署高版本LNMP環境LNMP
- 離線部署Python環境Python
- 《Flask Web開發》讀書筆記【Windows環境】FlaskWeb筆記Windows
- 一鍵化安裝 docker,一鍵化部署 lnmp+Redis 環境,快速部署 Laravel 環境DockerLNMPRedisLaravel
- 【Flask】線上部署Flask
- <<魚書>>建立虛擬環境安裝pipenv和flaskFlask
- 在Ubuntu上部署Hyperledger Fabric環境Ubuntu
- IBM /AIX 環境快速部署MySQLIBMAIMySql
- Ubuntu 16 下部署 Laravel LNMP 環境UbuntuLaravelLNMP
- 1、CentOS部署Java開發環境CentOSJava開發環境
- 快速搭建WebSphere Process Server 部署環境WebServer
- Ubuntu環境下Tornado環境部署Ubuntu
- 02-k8s部署環境K8S
- 在 Visual Studio Code 中配置 Python Flask 環境PythonFlask
- CentOS 部署 flask專案CentOSFlask
- Flask 應用如何部署Flask
- GitLab Runner部署(kubernetes環境)Gitlab
- ansible-playbook 批量部署lnmp環境LNMP
- 在生產環境使用Docker部署應用Docker
- Linux 環境Skywalking部署ElasticsearchLinuxElasticsearch
- MySQL Cluster開發環境快速部署(中文)MySql開發環境
- paddleocr 在docker環境下部署Docker
- zerorunner 在 Centos 的環境配置和部署CentOS
- Windows 作業系統部署ActiveMQ環境Windows作業系統MQ
- windows環境Jenkins部署前端專案WindowsJenkins前端