docker之传染病可视化系统

访问地址(刚买的服务器,不知道能活多久):飞出个未来
docker hub链接

1 运行

  1. 拉取镜像(900M,大概要10分钟)到本地。docker pull liuyishoua/infectious_visual:1.0
  2. 本地运行镜像。docker run -it -p 80[外部端口]:80[内部端口] liuyishoua/infectious_visual:1.0 /bin/bash。(不太懂外部,内部端口,请看下面的项目描述)
  3. 如上的 2 的命令,实际上已经进入到刚刚创建的容器中了。(run命令,创建容器并运行)
  4. 启动 nginx 服务器。容器内输入(经过2后你已经在容器中):nginx
  5. 启动 uwsgi 服务器。先 cd /root/apps/infectious_disease_analysis_platform ,再 uwsgi uwsgi.ini。
  6. 按 ctrl + p + q 退出容器

命令集合如下

# 1. 拉取镜像到本地
root@VM-8-2-ubuntu: docker pull liuyishoua/infectious_visual:1.0
# 2. 本地运行镜像,并给该容器命名为 oligei
root@VM-8-2-ubuntu: docker run -it -p 80[外部端口]:80[内部端口] --name oligei liuyishoua/infectious_visual:1.0 /bin/bash
# 4. 已经在容器中,启动 nginx 服务器
[root@6e7ad5b5121b /] nginx
# 5. 进入项目主目录,启动 uwsgi 服务器
[root@6e7ad5b5121b /] cd /root/apps/infectious_disease_analysis_platform
[root@6e7ad5b5121b /] uwsgi uwsgi.ini
# 6. 按 ctrl + p + q 退出容器
root@VM-8-2-ubuntu:

2 运行测试

  1. 本机测试
curl 127.0.0.1

# 或者用本地浏览器访问http://127.0.0.1
# 注意没有设置安全服务,只能 http 访问,不能 https
  1. 公网测试(前提:拥有公网ip)
# 需要改几个自己的 IP 的配置

# 1. 进入容器内部
root@VM-8-2-ubuntu: docker exec -it oligei /bin/bash
# 2. 关闭所有nginx以及uwsgi服务
[root@6e7ad5b5121b /] ps -ef|grep -E "nginx|uwsgi"|awk '{print $2}'|xargs kill -s 9

# 3. 更改nginx配置, 改动如图一所示。加上 default_server 并注释掉 server_name。
[root@6e7ad5b5121b /] cd /etc/nginx
[root@6e7ad5b5121b /] vi nginx.conf
# 4. 更改django setting.py的配置。改动如图二所示
[root@6e7ad5b5121b /] cd /root/apps/infectious_disease_analysis_platform/
[root@6e7ad5b5121b /] vi infectious_disease_analysis_platform/setting.py

# 5. 开启nginx服务以及uwsgi服务
[root@6e7ad5b5121b /] nginx
[root@6e7ad5b5121b /] uwsgi uwsgi.ini
# 6. 按 ctrl + p + q 退出容器。这时候不仅 curl 127.0.0.1 能访问。通过公网ip地址也能访问。比如我的服务器 http://82.156.12.199/

请添加图片描述
​ 图一
请添加图片描述
图二

3 展示效果

在这里插入图片描述

4 项目描述

架构

  1. 前端采用原生的html,css,js技术以及 echart 实现大屏和动画效果。

  2. 为了便于将算法嵌入的后端程序中,采用python的Django框架搭建。

  3. 由于展示的数据格式较为统一(Json文件),暂时未考虑使用数据库技术。

部署

采用 ubuntu16.04 + uwsgi + nginx + django。
请添加图片描述

  1. 看过去很复杂,其实 uwsgi 与 nginx 都是独立的模块,他们通过 tcp 端口 9000 实现通讯。上图搞错了,9000 改成 81。
  2. 这意味着就算没有了 uwsgi,你在本地还是能够访问到nginx服务。
  3. 只不过只会出现 nginx 的首页,我们的传染病系统就看不到了

主要文件目录:

  • 项目的主目录

    /root/apps/infectious_disease_analysis_platform
    
  • uwsgi配置目录

    /root/apps/infectious_disease_analysis_platform/uwsgi.ini
    
  • nginx配置目录

    /etc/nginx/nginx.conf
    

Tips:仅提供比较重要的目录。只要配好这三个文件,哪个电脑都运行得起来。

5 学习链接

  • nginx选用server规则

    https://blog.csdn.net/qq_35952638/article/details/100163824

  • 使用uWSGI和nginx来设置Django和你的web服务器

    https://uwsgi-docs-zh.readthedocs.io/zh_CN/latest/tutorials/Django_and_nginx.html

Linux命令总结

  • 查看进程

    ps -ef | grep 指定名字
    
  • kill 进程

    kill -s -9 pid
    
  • 批量 kill 进程

    ps -ef | grep nginx | awk '{print $2}' | xargs kill -s 9 
    
  • 查看端口开放情况

    netstat -ntlp
    
  • 管道查看多个name

    ps -ef | grep -E "name1|name2"
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值