[英]using browser-sync with django on docker-compose
我正在上大學的項目,以前從未使用過docker,在處理靜態文件時通常使用瀏覽器同步,但是現在當我在docker-compose上使用Django時(我遵循本教程),不知道如何設置它,有人可以給我建議或指導我嗎?
所以,我找到了解決方案,
首先按照此處的教程通過docker-compose設置django, 到此為止 ,您應該有一個正常的django項目。 然后按照以下步驟操作。
如何在“ docker-compose”中使用“ livereload”:
在主機上,打開命令行或終端並執行以下操作:
pip install --upgrade pip
pip install django-livereload-server
pip install psycopg2-binary
PS:我在docker中使用了psycopg2,這就是為什么我要安裝它的原因,如果您使用的是其他東西,請安裝它而不是psycopg2
現在將此行添加到requirements.txt文件(來自教程)
django-livereload-server
該文件應如下所示(如果您逐步按照本教程進行操作,則可以根據要使用的數據庫進行更改)
Django==2.0
psycopg2-binary
django-livereload-server
打開終端,cd到您的項目目錄,然后執行以下操作:
docker-compose build
將新的django-livereload下載到您的docker環境。
現在,您已經安裝了所有內容,
您需要設置項目以使用django-livereload-server模塊,
在項目的settings.py中,將livereload添加到INSTALLED_APPS:
INSTALLED_APPS = [
...
'livereload',
...
]
並將livereload中間件添加到MIDDLEWARE:
MIDDLEWARE = [
...
'livereload.middleware.LiveReloadScript',
]
並確保將DEBUG設置為True。
現在您可以開始開發了,
在項目目錄中打開2個控制台(終端)
在第一個步驟中:
python manage.py livereload
等到服務器啟動,服務器開始工作時,使其運行,然后在第二個終端中執行以下操作:
docker-compose up
第二個終端中的服務器正在運行django開發服務器,第一個終端中的服務器正在向第一個服務器提供一個livereload.js文件,django-livereload-server模塊使用該文件來注入css,自動重新加載html和js保存時..等
PS:啟動第二台服務器之前,請確保第一台服務器(liverload)正常工作
希望對您有所幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.