当前位置:   article > 正文

Docker 部署Django项目

Docker 部署Django项目

使用docker部署django项目也很简单,挺不错,分享下

环境

默认你已安装好docker环境

django项目大概结构
  1. (p3s) [root@opsweb]# tree opsweb
  2. opsweb
  3. ├── apps
  4. ├── logs
  5. ├── manage.py
  6. ├── media
  7. ├── opsweb
  8. ├── README.md
  9. ├── requirements.txt
  10. └── static
编写Dockerfile

这里指定 Python 版本为docker官方提供的
"0.0.0.0:8000" 这里笔者开启容器中 8000 端口

  1. FROM python:3.6
  2. RUN mkdir -p /usr/src/app
  3. COPY pip.conf /root/.pip/pip.conf
  4. COPY opsweb /usr/src/app/
  5. COPY run_web.sh /usr/src/app/
  6. RUN pip install -r /usr/src/app/requirements.txt
  7. WORKDIR /usr/src/app
  8. CMD [ "sh", "./run_web.sh"]
编写pip文件

这里是为了使用镜像 pip install速度快些 使用阿里云源

  1. [global]
  2. index-url = http://mirrors.aliyun.com/pypi/simple/
  3. [install]
  4. trusted-host=mirrors.aliyun.com
完整目录结构
  1. [root@opsweb]# ls
  2. Dockerfile opsweb pip.conf run_web.sh
build镜像
  1. docker build -t ops:v0.1 .
  2. Sending build context to Docker daemon 4.849 MB
  3. Step 1 : FROM python:3.6
  4. ---> 3e4c2972dc8d
  5. Step 2 : RUN mkdir -p /usr/src/app
  6. ---> Running in 8ddd929f5c18
  7. ---> 89dc0a1ffdf0
  8. Removing intermediate container 8ddd929f5c18
  9. Step 3 : COPY pip.conf /root/.pip/pip.conf
  10. ---> 5a4a165fed90
  11. Removing intermediate container 37f3fdc7e5d2
  12. Step 4 : COPY opsweb /usr/src/app/opsweb
  13. ---> f602e72ffd4c
  14. Removing intermediate container 8d4bb616916d
  15. Step 5 : COPY opsweb/requirements.txt /usr/src/app/
  16. ---> 6fe11a6fcbe0
  17. Removing intermediate container faeadee32fed
  18. Step 6 : RUN pip install -r /usr/src/app/requirements.txt
  19. ---> cc09c17d53da
  20. Removing intermediate container d7b45bec6993
  21. Step 7 : WORKDIR /usr/src/app
  22. ---> Running in c22dfdddbe81
  23. ---> c5c944b6df45
  24. Removing intermediate container c22dfdddbe81
  25. Step 8 : CMD python ./manage.py runserver 0.0.0.0:8000
  26. ---> Running in 29d5f0f53f6e
  27. ---> 10d37173fd13
  28. Removing intermediate container 29d5f0f53f6e
  29. Successfully built 10d37173fd13
结语

这样镜像就build好了,然后你可以直接docker run -p8000:8000 ops:v0.1 -d启动就行,或者也可以部署到k8s上去 也很简单 这里就不细讲了。

转载于:https://www.cnblogs.com/guigujun/p/9926437.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/553609
推荐阅读
相关标签
  

闽ICP备14008679号