目录:
生成 Django 项目
django-admin startproject demo
-bash: django-admin: command not found
这是由于django-admin 并没有添加到命令行运行路径下,个人建议 添加软连接
-
所以先查找 django-admin的环境
sudo find / -name django-admin
找到 Unix System Resource 下的django-admin,因为这里要找的是 工作环境,不是安装模块,所以避开 site-packges -
配置软连接
ln /usr/local/python3/bin/django-admin /usr/bin/django-admin
-
OK
django-admin startproject demo
cd demo
# 因为是随意的此时所以就不需要app了。查看是否可以启动
python3 manage.py runserver 0.0.0.0:8000
打开浏览器访问
Invalid HTTP_HOST header: '47.96.158.77:8000'. You may need to add '47.96.158.77' to ALLOWED_HOSTS.
无效的HTTP_HOST头:‘47.96.158.77:8000’。您可能需要向ALLOWED_HOSTS添加“47.96.158.77”。
不让我访问,很奇怪。大家看 之前的启动命令映射的端口是 0.0.0.0,他是可以所有都可以访问的。所以我们要讲 django -settings 中的 所有访问打开
-
更改 settings
cd demo # 主应用 vim settings.py # 更改文件
ESC :wq # 保存退出
-
更改后 重启服务
python3 manage.py runserver 0.0.0.0:8000
此时的Django就已经 OK 啦。
创建 Dockerfile
-
# 注意目录是在demo下 [root@linux-node1 demo] vim Dockerfile # dockerfile内容如下,路径放到django项目根路径
# demo/Dockerfile FROM python:3.6 MAINTAINER H_sen RUN mkdir /code WORKDIR /code ADD . /code/ RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple EXPOSE 8000 CMD ["python", "manage.py", "runserver", "0:8000"]
-
[root@linux-node1 demo] vim requirements.txt # django需要安装的包,路径放到django项目根路径
# requirements.txt Django==2.0.4 mysqlclient==1.4.6
-
[root@linux-node1 demo] docker build -t dj_demo:v1 -f Dockerfile . # 一定要注意这个 . [root@linux-node1 demo] docker run -d -p 你的IP:8000:8000 dj_demo:v1