Docker 部署Django项目
使用docker部署django项目也很简单,挺不错,分享下
环境
默认你已安装好docker环境
django项目大概结构
(p3s) [root@opsweb]# tree opsweb
opsweb
├── apps
├── logs
├── manage.py
├── media
├── opsweb
├── README.md
├── requirements.txt
└── static
编写Dockerfile
这里指定 Python 版本为docker官方提供的
"0.0.0.0:8000" 这里笔者开启容器中 8000 端口
FROM python:3.6
RUN mkdir -p /usr/src/app
COPY pip.conf /root/.pip/pip.conf
COPY opsweb /usr/src/app/
COPY run_web.sh /usr/src/app/
RUN pip install -r /usr/src/app/requirements.txt
WORKDIR /usr/src/app
CMD [ "sh", "./run_web.sh"]
编写pip文件
这里是为了使用镜像 pip install速度快些 使用阿里云源
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
完整目录结构
[root@opsweb]# ls
Dockerfile opsweb pip.conf run_web.sh
build镜像
docker build -t ops:v0.1 .
Sending build context to Docker daemon 4.849 MB
Step 1 : FROM python:3.6
---> 3e4c2972dc8d
Step 2 : RUN mkdir -p /usr/src/app
---> Running in 8ddd929f5c18
---> 89dc0a1ffdf0
Removing intermediate container 8ddd929f5c18
Step 3 : COPY pip.conf /root/.pip/pip.conf
---> 5a4a165fed90
Removing intermediate container 37f3fdc7e5d2
Step 4 : COPY opsweb /usr/src/app/opsweb
---> f602e72ffd4c
Removing intermediate container 8d4bb616916d
Step 5 : COPY opsweb/requirements.txt /usr/src/app/
---> 6fe11a6fcbe0
Removing intermediate container faeadee32fed
Step 6 : RUN pip install -r /usr/src/app/requirements.txt
---> cc09c17d53da
Removing intermediate container d7b45bec6993
Step 7 : WORKDIR /usr/src/app
---> Running in c22dfdddbe81
---> c5c944b6df45
Removing intermediate container c22dfdddbe81
Step 8 : CMD python ./manage.py runserver 0.0.0.0:8000
---> Running in 29d5f0f53f6e
---> 10d37173fd13
Removing intermediate container 29d5f0f53f6e
Successfully built 10d37173fd13
结语
这样镜像就build好了,然后你可以直接docker run -p8000:8000 ops:v0.1 -d
启动就行,或者也可以部署到k8s上去 也很简单 这里就不细讲了。
Docker 部署Django项目的更多相关文章
- docker 部署django项目(nginx + uwsgi +mysql)
最近在学习用docker部署Django项目,经过百折不挠的鼓捣,终于将项目部署成功,爬过好多坑,也发现很多技能需要提高.特此写下随笔与小伙伴们分享,希望能对大家有所启发. docker的理论我就不赘 ...
- 云服务器上利用Docker部署Django项目
转载别人的,请看下面链接 云服务器上利用Docker部署Django项目
- 在centos8使用Docker部署Django项目
引言 在本文中将介绍在Docker中通过django + uwsgi + nginx部署方式部署Django项目, 由于记录的是学习过程,使用的都是目前较高的版本. python 版本为3.8.3 d ...
- 打造专属测试平台4-使用Docker部署Django项目
编写完项目代码后,为了稳定的运行,需要将其部署至服务器.这里我选择了Docker去部署Django后端代码. 首先来看看Runoob对Docker的介绍: Docker 是一个开源的应用容器引擎,基于 ...
- Docker部署Django项目+Nginx+Fluend日志收集 和redis、memcached、RabbitMQ、Celery
前言 一.docker 1.docker是什么? Docker的英文本意是“搬运工”,Docker搬运的是集装箱(Container)可以成为容器,我可以把写的Django的WEB应用以及Python ...
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/98 来源:腾云阁 https://www.qclou ...
- 笔记14:Docker 部署Python项目
Docker 部署Python项目 导读: 软件开发最大的麻烦事之一就是环境配置,操作系统设置,各种库和组件的安装.只有它们都正确,软件才能运行.如果从一种操作系统里面运行另一种操作系统,通常我们采取 ...
- nginx + uwsgi 部署django项目
因项目需求,需要部署django项目,这里是基础的nginx配合uwsgi部署django,后续会采用docker部署的方式 环境: centos7 python3.5.4 django2.1.4 u ...
- k8s-生产环境部署django项目k8s-dashboard管理系统
1. k8s-生产环境部署django项目k8s-dashboard管理系统 gitee地址: https://gitee.com/scajy/django-k8s-dashboard.git 部署架 ...
随机推荐
- 外网访问Vmware虚拟机中的某个服务(如http)
如果主机是windowx NAT中隐藏的端口映射,说明一下环境,利用当然是VMnet8网络连接,在虚拟机中架设linux WEB服务器利用WEB默认80端口,IP为192.168.11.10,真实主机 ...
- Selenium Webdriver元素定位的八种常用方式(转载)
转载自 https://www.cnblogs.com/qingchunjun/p/4208159.html 在使用selenium webdriver进行元素定位时,通常使用findElement或 ...
- java得到当前日期的前一天或后一天
public String getNextDay(String startdate) throws ParseException{ Date date = (new SimpleDateFormat( ...
- Linux下查看磁盘挂载的几种方法
Linux下查看磁盘挂载的几种方法 第一种方法:df命令 # df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtm ...
- Django通过字段获取关联模型
#根据字段获取关联表 filter_field_obj=self.model._meta.get_field(filter_field) print('filter_field_obj:',filte ...
- ELK+SpringBoot+Logback离线安装及配置
ELK+SpringBoot+Logback 离线安装及配置 版本 v1.0 编写时间 2018/6/11 编写人 xxx 目录 一. ELK介绍2 二. 安装环境2 三. Elasticse ...
- 描述符__get__,__set__,__delete__
描述符__get__,__set__,__delete__ # 描述符:1用来代理另外一个类的属性 # __get__():调用一个属性时,触发 # __set__():为一个属性赋值时触发 # __ ...
- PyCharm默认文件头部的设置
PyCharm的设置 1.设置默认的文件头: 找到该路径并添加以下信息 File->settings->Editor->File and Code Templates->Pyt ...
- django by example 第四章 dashboard处html无法渲染问题
描述: 实现django by example 代码时,第四章 dashboard处html无法渲染问题. 此时报错,NoReverseMatch at /account/login/, Error ...
- mysql c-api 预处理语句
stmt = mysql_stmt_init(mysql) mysql_stmt_prepare(stmt, "SELECT ?", strlen("SELECT ?&q ...