django的部署以及和docker 的集成

开发环境:ubuntu14  python3

首先安装docker,docker-compose  如果不懂,详见 DOCKER官网

接下来安装django

通过pip安装 sudo pip install django=1.11   这里可以指定要安装的版本

如果没有安装pip 请先预安装pip    sudo apt-get install pip

先创建一个文件夹 mkdir first_django

查看文件  ls

进入文件夹 cd first_django

创建工程  django-admin.py startproject   mysite   注意:此处是工程

创建应用 python manage.py startapp app

接下来的操作可以参考这篇文章   https://www.cnblogs.com/fnng/p/3740274.html

就是在ubuntu当中开发 django

当我们在ubuntu当中开发完成的时候,想要发布生成docker image 的时候

需要做的几个操作

第一步  根目录下创建requirements.txt 文件 可以手动添加内容,也可以通过 sudo freeze >requirements.txt 命令添加

第二步  创建dockerfile文件

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements/prod.txt /code/
RUN pip install -r prod.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
ADD . /code/

第三步 创建docker-compose.yml文件

version: ‘2‘
services:
web:
restart: always
# 指定镜像创建源目录,在其根目录中必须包含Dockerfile
build: /home/ubuntu/first_django/
# 多行命令
command: bash -c " python manage.py runserver 0.0.0.0:8000 "
ports:
- "8000:8000"
# 指定你要挂载的容器卷,路径可任意
volumes:
- /home/ubuntu/first_django/:/code
# 指定要进行相互间通信的容器名
ports:
- "8000:8000"
nginx:
restart: always
build: ./nginx/
ports:
- "80:80"
# nginx容器挂载在与web容器相同的容器卷上
volumes_from:
- web
links:
- web:web

第四步  在根目录下运行docker-compose up

可以看到项目己经启动,相应的镜像也己经创建完毕。

时间: 2024-10-21 03:10:26

django的部署以及和docker 的集成的相关文章

Mesos和Docker的集成

摘要: 众所周知,Mesos全面支持Docker.但是这意味着什么呢?在命令行里运行docker run...就可以使用Docker了.还需要做什么?让我们一起研究下Mesos的高级特性--和Docker的集成.本文选自<用Mesos框架构建分布式应用>. 因为Docker本身想管理整个容器,从chroot.命名空间到整个命名空间的cgroup,它会和默认的Mesos容器发生冲突.因此,Mesos添加了容器机的支持,一种可插拔的机制,让Mesos的容器机子系统可扩展:最初Mesos的基于 LX

部署基于Gitlab+Docker+Rancher+Harbor的前端项目这一篇就够了

部署基于Gitlab+Docker+Rancher+Harbor的前端项目这一篇就够了 安大虎 ? momenta 中台开发工程师 6 人赞同了该文章 就目前的形势看,一家公司的运维体系不承载在 Docker+Harbor(或 Pouch 等同类平台)之上都不好意思说自己的互联网公司.当然这些技术也不适用于全部公司,技术在迭代,平台也一样,把我使用的工具和大家分享下,一起成长(文章中扩展可按需Google). Docker docker的架构图如下: 从图中可以看出几个组成部分 docker c

Django Web部署平台

一.基础环境Django Web部署平台 1.角色.ip.版本.内核.软件 serverA 10.1.10.236 3.16.0-4-amd64 8.1 nginx uwsgi django python python-2.7.9 nginx-1.6.2 uwsgi-2.0.11.2 django-1.8.6 2.安装基础包 1)安装基础包 apt-get -y install gcc make python-dev python-setuptools python curl tree 2)使用

centos6.5腾讯云django环境部署记录---1、系统准备

一.腾讯云一开始是root用户,为了避免不可挽救就"毁灭性打击",我们先来创建一个新用户. 1.创建用户: 2.给新用户赋予sudo使用权限: (1).回到root用户,修改文件权限. (2).编辑/etc/sudoers文件,增加你的用户 (3).撤销文件的写权限. 最后:在新用户模式下,如果出现permissions denied,加上sudo 二.安装和配置vsftp 此处参考http://www.cnblogs.com/surge/p/3868270.html. (1).安装v

ansible 部署基于centos7+docker+nginx+openssl+v2版私有仓库

ansible 部署基于centos7+docker.1.12+nginx+openssl+v2版私有仓库 1.申请域名证书不做详细教程网络上很多 2.ansible-playbook 结构 . ├── hosts # 需要安装服务器IP地址 ├── roles │   ├── docker │   │   ├── defaults │   │   ├── files │   │   │   └── dockerkey #证书 文件加 │   │   │       ├── domain.crt

使用Nginx+uWSGI+Django方法部署Django程序(下)

在上一篇文章<五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上)>中,阐述了如何只使用uWSGI来部署Django程序. 当然,单单只有uWSGI是不够的,在实际的部署环境中,Nginx是必不可少的工具. 在本篇文章中,我将一直延用“N步法”的风格来阐述如何将uWSGI与Nginx做连接来部署Django程序.并在最后,会较为完整的阐述本社区的部署方法. 本文大纲: 环境介绍 配置uWSGI 配置Nginx Nginx+uWSGI+Django的实现方式 一些建

【转】五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(下)

五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(下) By Django中国社区 at 2013-05-18 04:38 在上一篇文章<五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上)>中,阐述了如何只使用uWSGI来部署Django程序. 当然,单单只有uWSGI是不够的,在实际的部署环境中,Nginx是必不可少的工具. 在本篇文章中,我将一直延用“N步法”的风格来阐述如何将uWSGI与Nginx做连接来部署Django程序.并

【转】五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上)

五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上) By Django中国社区 at 2013-05-12 15:05 Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.nginx把所有静态请求自己来处理(这是NGINX的强项).然后,NGINX将所有非静态请求通过uwsgi传递给Django,由Django来进行处理,

使用Nginx+uWSGI+Django方法部署Django程序(上)

Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.nginx把所有静态请求自己来处理 (这是NGINX的强项).然后,NGINX将所有非静态请求通过uwsgi传递给Django,由Django来进行处理,从而完成一次WEB请求. 可见,uwsgi的作用就类似一个桥接器.起到桥梁的作用. NOTE:不使用nginx,只使用uwsgi+django也是可以