QQ群:

GitHub:https://github.com/yjlch1016/dapi

采用Docker+Supervisor+Nginx+uWSGI+Django

一、Dockerfile文件:

FROM ubuntu:18.04
# 基础镜像

MAINTAINER yangjianliang <526861348@qq.com>
# 作者

RUN sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list
# 设置apt源为阿里云源

RUN apt-get clean && \
    apt-get update && \
    apt-get upgrade -y
# 检查软件包并升级

RUN apt-get install -y \
    git \
    python3 && \
    apt-get update && \
    apt-get install -y \
    python3-dev \
    python3-setuptools && \
    apt-get update && \
    apt-get install -y \
    python3-pip && \
    apt-get update && \
    apt-get install -y \
    nginx \
    supervisor &&\
    apt-get update && \
    ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
    apt-get install -y \
    tzdata && \
    rm -rf /var/lib/apt/lists/*
# 安装软件

RUN echo "daemon off;" >> /etc/nginx/nginx.conf
COPY deploy_conf/nginx-app.conf /etc/nginx/sites-available/default
COPY deploy_conf/supervisor-app.conf /etc/supervisor/conf.d/
COPY deploy_conf/pip.conf /root/.pip/pip.conf
# 复制配置文件

RUN pip3 install https://codeload.github.com/sshwsfc/xadmin/zip/django2
COPY requirements.txt /django/dapi/
RUN pip3 install -r /django/dapi/requirements.txt
# 安装Python依赖库

COPY . /django/dapi/
RUN sed -i '35,36d' /usr/local/lib/python3.6/dist-packages/django/db/backends/mysql/base.py && \
sed -i '145,146d' /usr/local/lib/python3.6/dist-packages/django/db/backends/mysql/operations.py && \
sed -i '93d' /usr/local/lib/python3.6/dist-packages/django/forms/boundfield.py
# 复制其余代码并修改Django源码

EXPOSE 80
# 暴露80端口

CMD ["supervisord", "-c", "/etc/supervisor/conf.d/supervisor-app.conf"]
# 启动supervisor并加载配置文件

二、打包:

docker build -t dapi .

等待一会儿

网速慢的话十分钟吧

三、运行:

docker run -d --name dapi1.0 -p 80:80 dapi:latest

# 启动容器并在后台运行,暴露80端口,并取个别名为dapi1.0

docker inspect dapi1.0

# 查看容器IP地址

docker exec -it dapi1.0 /bin/bash

# 进入容器内部

supervisord -c /etc/supervisor/conf.d/supervisor-app.conf

# 手动启动supervisor

访问(宿主机的IP地址):

http://192.168.1.102/

账号:admin

密码:test123456

后台:

http://192.168.1.102/admin/

账号:admin

密码:test123456

dapi 基于Django的轻量级测试平台八 Docker部署的更多相关文章

  1. dapi 基于Django的轻量级测试平台七 怎样部署到生产环境

    QQ群: GitHub:https://github.com/yjlch1016/dapi Nginx+uWSGI 前置条件:以下所有操作均在root账号下面进行如果不是root用户请注意权限问题因为 ...

  2. dapi 基于Django的轻量级测试平台一 设计思想

    GitHub:https://github.com/yjlch1016/dapi 一.项目命名: dapi:即Django+API测试的缩写 二.设计思想: 模拟性能测试工具JMeter的思路, 实现 ...

  3. dapi 基于Django的轻量级测试平台二 前端页面

    QQ群: GitHub:https://github.com/yjlch1016/dapi 一.登录页login.html: 二.首页home.html: 三.产品线列表页product.html: ...

  4. dapi 基于Django的轻量级测试平台六 怎样使用压测功能

    QQ群: GitHub:https://github.com/yjlch1016/dapi JMeter非GUI模式下: jmeter -n -t jmx脚本 -l jtl文件 -e -o 测试报告目 ...

  5. dapi 基于Django的轻量级测试平台五 测试报告

    QQ群: GitHub:https://github.com/yjlch1016/dapi 一.柱状图 二.饼状图

  6. dapi 基于Django的轻量级测试平台四 任务设置

    QQ群: GitHub:https://github.com/yjlch1016/dapi 一.间隔时间: 二.定时时间: 三.任务设置: 四.任务结果:

  7. dapi 基于Django的轻量级测试平台三 接口关联

    QQ群: GitHub:https://github.com/yjlch1016/dapi 一.接口关联思路: 在接口测试中, 很多场景下, 上一个接口的出参要作为下一个接口的入参, 即上一个接口的响 ...

  8. dmock 基于Django的轻量级Mock平台

    GitHub:https://github.com/yjlch1016/dmock # dmock 基于Django的轻量级Mock平台 dmock即Django+Mock的缩写 一.思路: mock ...

  9. [2018-03-06] 基于Django的轻量级CMS Mezzanine搭建笔记

    一丶什么是Mezzanine? 它是基于django的内容管理平台(),组成简单,可扩展性和定制性强,特别是个小型的个人博客系统.它也提供了类似wordpress的管理页面.博客发布.图片展示等功能, ...

随机推荐

  1. Ninject 初步 -Getting Started with Ninject 精通ASP-NET-MVC-5-弗瑞曼 Listing 6-10

  2. openpyxl库实现对excel文档进行编辑(追加写入)

    首先,这个库只支持xlsx格式的excel文件 预期,对”excel_test.xlsx“的A1单元格写入”hello word“ 1.安装”openpyxl“库,pip install openpy ...

  3. P4173 残缺的字符串(FFT字符串匹配)

    P4173 残缺的字符串(FFT字符串匹配) P4173 解题思路: 经典套路将模式串翻转,将*设为0,设以目标串的x位置匹配结束的匹配函数为\(P(x)=\sum^{m-1}_{i=0}[A(m-1 ...

  4. springIOC源码接口分析(十一):ConfigurableApplicationContext

    一 实现接口 关系图: ConfigurableApplicationContext接口实现了三个接口,ApplicationContext, Lifecycle, Closeable, Applic ...

  5. spring源码系列(一):使用Gradle构建spring5源码的一些坑和步骤

    源代码github:  https://github.com/spring-projects/spring-framework.git 一 修改项目配置文件中gradle版本和地址 替换成本地安装的版 ...

  6. Leetcode 题目整理-2 Reverse Integer && String to Integer

    今天的两道题关于基本数据类型的探讨,估计也是要考虑各种情况,要细致学习 7. Reverse Integer Reverse digits of an integer. Example1: x = 1 ...

  7. Capslock+程序介绍

    一直为编程时方向键不在盲打区域苦恼,今天接触了一个非常好的软件Capslock+. 软件特别小,一共只有九百多K,甚至不能称为软件,只能算一个很小的脚本了.但解决了我非常大的一个难题.安装好软件后可以 ...

  8. Arduino系列之按键模块(一)

    今天我将简单介绍按键模块计数的原理: 我们常用的按键及按键模块有2脚和4脚的,其内部结构如图所示,当按下按键时就会接通按键两端,当放开时,两端自然断开.                         ...

  9. nginx的四个主要组成部分

    1.nginx二进制可执行文件 · 由各模块源码编译出的一个文件 2.nginx.conf配置文件 · 控制nginx的行为 3.access.log访问日志 . 记录每一条http请求信息 4.er ...

  10. Codeforces 1087B Div Times Mod(数学+暴力)

    题意: 求(x div k) * (x mod k) = n的最小解x,保证有解 1<=n<=1e6, k<=1000,1s 思路: 注意到k的范围是1e3, 1<=x mod ...