准备工作——配置环境
- 利用
docker
镜像,生成容器
scp /var/lib/acwing/docker/images/ django_lesson_1_0.tar server_name:
将镜像上传到自己租的云端服务器,server_name
是服务器别名
ssh server_name
登录自己的云端服务器
docker load -i django_lesson_1_0.tar
将镜像加载到本地
docker run -p 20000:22 -p 8000:8000 --name django_server -itd django_lesson:1.0
创建并运行django_lesson:1.0
镜像,生成容器django_server
(端口要自己去云平台放行),20000用于ssh
登录,8000用于访问项目 - 创建容器用户和设置免密登录
docker attach django_server
进入创建的docker
容器
passwd
设置root
密码
adduser look
创建普通用户look
usermod -aG sudo look
给用户look
分配sudo
权限
su -look
可切换到用户look
中
ctrl p + ctrl q
挂起并退出容器
返回AC terminal,为look
用户配置别名和免密登录
vim ~/.ssh/config
配置别名为django
ssh-copy-id django
为look
用户一键添加公钥,免密登录 - 配置容器
tmux
环境
scp .bashrc .vimrc .tmux.conf django:
至此,云服务器上的docker
容器配置完毕,且在 AC Terminal 中可以用ssh django
免密登录到容器中的look
用户
开始施工
- 创建
django
项目,名称为acapp
django-admin startproject acapp
- 配置
git
初始化、关联远程仓库、公钥设置 - 启动项目
在项目目录下输入python3 manage.py runserver 0.0.0.0:8000"
- 设置IP地址
在acapp/acapp/settings.py
中的ALLOWED-HOSTS = []
添加自己云服务器的IP地址
设置完后,就可以用云服务器IP地址:8000
访问项目 - 创建名为
game
的app
python3 manage.py startapp game
- 登录项目的管理员页面
设置前先关闭项目
同步数据库修改,在项目目录下运行python3 manage.py migrate
创建管理员账号(用户名、邮箱地址和密码),python3 manage.py migrate
启动项目pyhton3 manage.py runserver 0.0.0.0:8000
然后就可以通过IP地址:8000/admin
登录管理员页面 - 编写指定路径下的页面
在csapp/game
下的views.py
中配置index
函数,调用时返回页面需要显示的内容
在csapp/game
下新建urls.py
文件,配置路径和调用的函数index
在csapp/csapp
中的urls.py
文件中引入game
文件夹中配置的路径
写好之后,访问指定路径时就会显示页面内容。访问时发送一个请求,请求通过csapp/csapp
中的urls.py
找到csapp/game
中指定的路径,然后调用index
函数,函数返回页面内容字符串,页面解析字符串内容并显示。