zoukankan      html  css  js  c++  java
  • docker+django 运行环境部署

    本篇描述了制作一个docker+django的镜像。

    其中uwsgi,supervisor 这两工具是为了后续采用nginx 服务器所安装的,本篇测试不需要这些。只是用了django的自带测试服务器测试。

    1,首先下载 docker +ubuntu 基础镜像

          docker pull ubuntu

          下载完毕后 

          docker images

           查看结果:        

           REPOSITORY TAG IMAGE ID CREATED SIZE
           ubuntu latest 4c108a37151f 33 hours ago 64.2MB

    2,运行容器

          docker run -it ubuntu  bin/bash

          进入命令行模式:

          查看ubuntu 版本,cat  /etc/issue  ,我当前下载版本 Ubuntu 18.04.2 LTS l

    3,安装python环境

          apt-get install python3

          python=python3

          运行 python控制台:      

          Python 3.6.8 (default, Jan 14 2019, 11:02:34)
          [GCC 8.0.1 20180414 (experimental) [trunk revision 259383]] on linux
          Type "help", "copyright", "credits" or "license" for more information.

          默认安装了3.6.8 版本,ctrl+D 退出python 控制台

    4,安装pip3

          由于上面安装的是python3 ,所以安装pip3工具

          apt install python3-pip

    5,安装djgano

          pip3 install Django

          安装完毕后查看django版本:

          python:

          import django      

          django.get_version()
           '2.2.2'

          安装完毕django 2.2.2 版本

    6  制作镜像

        docker commit -m="python3+django2" -a="zhj" 9af3cf56dbec  ubuntu:django

        

    7, 安装Django和mysql连接的驱动 pymysql  

     git clone https://github.com/PyMySQL/PyMySQL
     cd PyMySQL 
     python3 setup.py install
    由于ubuntu:django镜像上没有git命令,所以要么安装git,要么采用另外一种方式解决,我采用了第二种。
    在宿主机上下载:
     git clone https://github.com/PyMySQL/PyMySQL
    放在目录
    /home/andrew下

    然后运行容器:
    docker run -it -v /home/andrew:/home/andrew django bin/bash

    -v /home/andrew:/home/andrew 表示将容器中/home/andrew目录挂载到宿主机的/home/andrew上。
    现在浏览容器的
    /home/andrew,
     cd PyMySQL 
     python3 setup.py install
    完成pymysql的安装

    8,安装 uwsgi
    pip3 install uwsgi

    9,安装supervisor

           一个专门用来管理进程的工具,我们用它来管理 uwsgi 进程.

           pip3 install supervisor

       10, 安装vim

            apt-get install vim

       11, 运行一个django工程

             运行我自己建的一个django工程

            python3 manage.py runserver 0.0.0.0:8000,

            报错如下:         

            /usr/local/lib/python3.6/dist-packages/django/db/backends/mysql/base.py", line 36, in <module>
            raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

            修改如下:

            把文件base.py中的这些内容注释掉:        

           #if version < (1, 3, 13):
           # raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

       12,测试

            docker commit -m="python3+django2" -a="zhj" 8af3cf56dbdc  ubuntu:django1  (制作镜像的步骤根据自己的安装情况而定,上面步骤中可出现多次制作,自己决定啦)

            制作一个新镜像

            运行该镜像

            docker run -p 8083:8000 -it -v /home/andrew/django/test/project:/home/andrew ubuntu:django1 bin/bash

            运行django        

            python3 manage.py runserver 0.0.0.0:8000

            在浏览器上访问  192.168.21.59:8083/admin,出现django登录页面。测试成功。(192.168.21.59,我的主机名)

       13,后续,下一篇该尝试nginx部署运行django 了

            

           

          

         

  • 相关阅读:
    木马后门入侵与RKHunter,ClamAV检测工具
    Jenkins环境搭建
    Mha-Atlas-MySQL高可用
    JAVA企业级应用服务器之TOMCAT实战
    Keepalived高可用集群
    scp ssh-key连接原理
    jumpserver跳板机搭建
    DNS域名解析服务器
    DHCP服务
    Keepalived高可用集群
  • 原文地址:https://www.cnblogs.com/huanhuaqingfeng/p/11059168.html
Copyright © 2011-2022 走看看