更好的閱讀體驗
Python3官方Tutorial
cd /var/lib/acwing/docker/images
scp django_lesson_1_0.tar ali:~/
#登陸自己的服務器
ssh ali
#加載鏡像
docker load -i django_lesson_1_0.tar
#利用django_lesson鏡像創建django_server容器
#將20000端口和8000端口映射為容器的22端口和8000端口
#22端口用於SSH連接,8000端口用於調試項目
docker run -p 20000:22 -p 8000:8000 --name django_server -itd django_lesson:1.0
#進入容器
docker attach django_server
#創建acs用戶
adduser acs
#添加sudo權限
usermod -aG sudo acs
#修改root賬戶密碼
passwd root
#將容器掛起,重啟容器
<ctrl>-p,<ctrl>-q
docker restart django_server
配置ssh
連接別名
cd .ssh
vim config
添加如下內容
Host ali_dj
HostName xxx.xx.xx.xxx
User acs
Port 20000
ssh-copy-id ali_dj
可實現ssh免密連接docker容器
#將配置文件傳到ali_dj上
scp .vimrc .tmux.conf ali_dj:~/
#進入acs用戶
ssh ali_dj
#使用django-admin創建項目
[email protected]:~$ django-admin --version
3.2.8
[email protected]:~$ django-admin startproject acapp
[email protected]:~$ tree .
.
└── acapp
├── acapp
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── manage.py
2 directories, 6 files
#生成密鑰
ssh-keygen
#將公鑰復制到gitlab上
cat .ssh/id_rsa.pub
#全局配置
cd acapp
git init
git config --global user.name "username"
git config --global user.email "useremail"
git remote add origin [email protected]:Misaka_9982/acapp.git
git add .
git commit -m "Initial commit"
git push --set-upstream origin master
python3 manage.py runserver 0.0.0.0:8000
使用ag命令找到ALLOWED_HOSTS
[email protected]:~$ ag ALLOWED_HOSTS
acapp/acapp/settings.py
28:ALLOWED_HOSTS = []
#進入該文件,將服務器ip地址添加進去
ALLOWED_HOSTS = ["xxx.xx.xx.xxx"]
出現如下界面
命令行中出現如下提示:
按照提示進行操作
python3 manage.py migrate
在使用git 的過程中發現將python的編譯文件 .pyc 文件都添加進了git的緩存區之中,如圖
git add .
git status
使用命令將編譯文件刪除
git rm --cache *.pyc
編寫.gitignore
文件,以後都忽視這些編譯文件
~/acapp$ vim .gitignore
# 格式:**/文件名
**/__pycache__
*.swp
在ip:port
後面加上/admin
即可看到下圖所示界面
# 創建超級用戶
python3 manage.py createsuperuser
在網址中登陸可見如下界面
python3 manage.py startapp game
tree .
game
目錄下的各個文件作用
urls.py
:Django 路由在 urls.py 配置,urls.py 中的每一條配置對應相應的處理方法。views.py
:一個視圖函數,簡稱視圖,是一個簡單的 Python 函數,它接受 Web 請求並且返回 Web 響應。templates
目錄:管理 html
文件models
目錄:管理數據庫數據game.views
:from django.http import HttpResponse
def index(request):
line1 = '<h1 > 第一個網頁 </h1>'
return HttpResponse(line1)
game.urls
:from django.urls import path
from game.views import index
urlpatterns = [
path("", index, name="index"),
]
acapp.urls
:from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('', include('game.urls')),
path('admin/', admin.site.urls),
]
路由重定向路徑:浏覽器URL網址輸入
-> acapp.urls
-> game.urls
-> game.views.index
-> views頁面展示
打開網頁輸入對應地址可得如下頁面