阅读:66
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创建项目
acs@711094ab2a79:~$ django-admin --version
3.2.8
acs@711094ab2a79:~$ django-admin startproject acapp
acs@711094ab2a79:~$ 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 git@git.acwing.com: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
acs@711094ab2a79:~$ 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 style="text-align: center"> 第一个网页 </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页面展示
打开网页输入对应地址可得如下页面
