1. 程式人生 > >django的部署以及和docker 的集成

django的部署以及和docker 的集成

logs txt 沒有 build 目錄 buffered .html 註意 uil

開發環境: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

可以看到項目己經啟動,相應的鏡像也己經創建完畢。

django的部署以及和docker 的集成