博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker 部署Django项目
阅读量:4101 次
发布时间:2019-05-25

本文共 1766 字,大约阅读时间需要 5 分钟。

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

环境

默认你已安装好docker环境

django项目大概结构

(p3s) [root@opsweb]# tree opswebopsweb├── apps├── logs├── manage.py├── media├── opsweb├── README.md├── requirements.txt└── static

编写Dockerfile

这里指定 Python 版本为docker官方提供的

“0.0.0.0:8000” 这里笔者开启容器中 8000 端口

FROM python:3.6RUN mkdir -p /usr/src/appCOPY pip.conf /root/.pip/pip.confCOPY opsweb /usr/src/app/COPY run_web.sh /usr/src/app/RUN pip install -r /usr/src/app/requirements.txtWORKDIR /usr/src/appCMD [ "sh", "./run_web.sh"]

编写pip文件

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

[global]index-url = http://mirrors.aliyun.com/pypi/simple/[install]trusted-host=mirrors.aliyun.com

完整目录结构

[root@opsweb]# lsDockerfile  opsweb   pip.conf run_web.sh

build镜像

docker build -t ops:v0.1 .Sending build context to Docker daemon 4.849 MBStep 1 : FROM python:3.6 ---> 3e4c2972dc8dStep 2 : RUN mkdir -p /usr/src/app ---> Running in 8ddd929f5c18 ---> 89dc0a1ffdf0Removing intermediate container 8ddd929f5c18Step 3 : COPY pip.conf /root/.pip/pip.conf ---> 5a4a165fed90Removing intermediate container 37f3fdc7e5d2Step 4 : COPY opsweb /usr/src/app/opsweb ---> f602e72ffd4cRemoving intermediate container 8d4bb616916dStep 5 : COPY opsweb/requirements.txt /usr/src/app/ ---> 6fe11a6fcbe0Removing intermediate container faeadee32fedStep 6 : RUN pip install -r /usr/src/app/requirements.txt ---> cc09c17d53daRemoving intermediate container d7b45bec6993Step 7 : WORKDIR /usr/src/app ---> Running in c22dfdddbe81 ---> c5c944b6df45Removing intermediate container c22dfdddbe81Step 8 : CMD python ./manage.py runserver 0.0.0.0:8000 ---> Running in 29d5f0f53f6e ---> 10d37173fd13Removing intermediate container 29d5f0f53f6eSuccessfully built 10d37173fd13

结语

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

转载地址:http://zuksi.baihongyu.com/

你可能感兴趣的文章
Linux select TCP并发服务器与客户端编程
查看>>
Linux系统编程——线程池
查看>>
基于Visual C++2013拆解世界五百强面试题--题5-自己实现strstr
查看>>
Linux 线程信号量同步
查看>>
C++静态成员函数访问非静态成员的几种方法
查看>>
类中的静态成员函数访问非静态成员变量
查看>>
C++学习之普通函数指针与成员函数指针
查看>>
C++的静态成员函数指针
查看>>
Linux系统编程——线程池
查看>>
yfan.qiu linux硬链接与软链接
查看>>
Linux C++线程池实例
查看>>
shared_ptr简介以及常见问题
查看>>
c++11 你需要知道这些就够了
查看>>
c++11 你需要知道这些就够了
查看>>
shared_ptr的一些尴尬
查看>>
C++总结8——shared_ptr和weak_ptr智能指针
查看>>
c++写时拷贝1
查看>>
C++ 写时拷贝 2
查看>>
Linux网络编程---I/O复用模型之poll
查看>>
Java NIO详解
查看>>