Django 快速开发实战
吕召刚
前大众点评搜索负责人
22705 人已学习
新⼈⾸单¥68
课程目录
已完结/共 76 讲
日常开发中常见的复杂场景:Django进阶开发实战 (22讲)
通往Hacker之路 (3讲)
Django 快速开发实战
登录|注册
留言
7
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 63 | 云环境中的部署:开发环境的容器化&构建小镜像
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 课程介绍
02 | 内容综述
03 | 初识Django:Django适合做什么?
04 | 用2个命令创建一个包含用户管理功能的后台
05 | 开始Django之旅 :10分钟如何创建一个可以管理职位的后台
06 | 产品体验优化:快速迭代完善应用
07 | 添加自定义页面:让匿名用户可以浏览职位列表页
08 | 添加自定义页面:让匿名用户可以查看职位详情
09 | 开始一个正式的产品:产品背景、迭代思维与MVP产品规划
10 | 唯快不破:在产品中使用产品迭代思维
11 | 数据建模 & 企业级数据库设计原则
12 | 创建应用和模型,分组展示页面内容
13 | 产品新需求:如何批量从Excel文件导入候选人数据(命令行工具)
14 | 产品体验优化:候选人列表筛选和查询
15 | 省去单独的账号管理工作:企业域账号集成
16 | 批量设置面试官:面试官的导入、授权
17 | 产品新需求 :如何导出候选人的数据到CSV(增加自定义的数据操作菜单)
18 | 如何记录日志方便排查问题
19 | 生产环境的配置如何管理更安全: 生产环境与开发环境配置分离
20 | 产品细节完善
21 | 定制更美观的主题
22 | 定制面试官权限
23 | 系统报错功能:钉钉群消息集成&通知一面面试官
24 | 允许候选人注册登录: 集成Registration
25 | 候选人简历存储:创建简历Model
26 | 让候选人可以在线投递简历
27 | 使用Bootstrap来定制页面样式
28 | 简历评估&安排一面面试官
29 | 定制列表字段,查看简历详情
30 | 遗留系统集成:为已有系统数据库生成管理后台
31 | Django的中间件(Middleware)
32 | 创建请求日志、性能日志记录中间件
33 | 在Django中支持多语言
34 | 错误和异常日志上报:Sentry集成
35 | 错误和异常日志上报:捕获异常上报到Sentry并发送钉钉群通知
36 | Django安全防护:防止XSS跨站脚本攻击
37 | Django安全防护:CSRF跨站请求伪造和SQL注入攻击
38 | Django Rest Framework开放API
39 | 在Django中使用缓存&Redis的使用
40 | Django与Celery 集成:Celery的使用
41 | Django与Celery集成:异步任务
42 | Django与Celery集成:定时任务
43 | 文件和图片上传功能
44 | 实践中的问题:多数据库路由
45 | Django之美:3 行代码支持大数据量的关联外键 (autocomplete_fields)
46 | Django之美:20行代码实现只读站点ReadOnlyAdmin
47| Django之美:10行代码自动注册所有Model到Admin管理后台
48 | Django之美:Signals信号及其使用场景
49 | Django之美:优雅的架构设计 - CSR架构总结之Celery
50 | Django之美:优雅的架构设计 - CSR架构总结之Sentry&Django Rest Framework
51 | Django之美:Django的常用插件
52 | 生产环境要注意哪些事项:生产环境的应用部署
53 | 应用水平扩展:使用负载均衡
54 | 让网站访问更快:使用CDN加速
55 | 让故障在第一时间被感知到:接入监控告警
56 | 生产环境中的安全:生产环境的安全设计
57 | 生产环境中的安全:应用安全
58 | 生产环境中的安全:架构安全
59 | 生产环境中的安全:数据安全
60 | 生产环境中的安全:密码安全与业务安全
61 | 云环境中的部署:Docker容器的基础用法
62 | 云环境中的部署:如何像分发集装箱一样发布应用
63 | 云环境中的部署:开发环境的容器化&构建小镜像
64 | 云环境中的部署:什么时候需要容器编排
65 | 云环境中的部署:阿里云上搭建Kubernetes集群
66 | 云环境中的部署:管理监控容器中的Django应用
67 | 云环境中的部署:应用日志收集与查询
68 | 云环境中的持续集成:CI/CD的工作流程
69 | 云环境中的持续集成:CI/CD的基本使用
70 | 快速迭代的价值与挑战
71 | 使用OOPD方法识别产品核心功能
72 | 如何做技术方案设计与工作拆解
73 | 如何保证交付质量和持续迭代
74 | 如何更高效地寻求帮助?
75 | 一名Hacker的成长之路
76 | 结束语
登录 后留言

全部留言(7)

  • 最新
  • 精选
dived
docker build -t recruitment-base:0.0.1 . 速度慢 RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories 加速linux包下载 pip install -r requirements.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com 加速pypi包 另外还一个 ERROR: Could not build wheels for cryptography which use PEP 517 and cannot be installed directly 需要在requirements.txt中指定cryptography==2.8

作者回复: 感谢分享

2021-05-03
2
2
onthewaygame
docker run -it --rm -p 8000:8000 --entrypoint /bin/sh ihopeit/recruitment-base:0.8.2 这条命令可以正常执行 D:\work\dev\python\django\jike\data\recruitment> docker run --rm -p 8000:8002 -v "$(pwd)":/data/recruitment --env server_params="--settings=settings.local" ihopeit/recruitment-base:0.8.2 执行报错 docker: invalid reference format. See 'docker run --help'. 老师,能帮我分析是哪里的问题导致的吗?

作者回复: windows下面没有pwd,这是linux下面的用法。要改成windows上的路径

2021-05-11
Geek_231621
老师,我用docker run -it --rm -p 8000:8000 -v "$(pwd)":/data/recruitment --env server_params="--settings=settings.local" ihopeit/recruitment-base:0.8.1 执行总是提示:ModuleNotFoundError: No module named 'settings.local\r'。 这是什么原因呢?

作者回复: settings目录下面找不到local.py的配置

2021-01-23
2
dived
老师教程里面build镜像的时候应该是没放redis里面吧,这样run启动后 原来的代码里面会有使用redis的情况 127.0.0.1:6379. Connection refused. 我是注释了settings\local.py 里面的CACHE配置才可以正常跑起来
2021-05-04
1
2
弗拉基米尔·伊里奇·乌里扬诺夫
# 3.9-alpine 已经测试过可用的 Dockerfile ,requirements.txt 里的cryptography==2.8指定这个版本(下面 @David 同学有提到) FROM python:3.9-alpine WORKDIR /app/recruitment ENV server_params="" COPY requirements.txt ./ RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories \ && apk update \ && apk upgrade \ && apk add --update --no-cache curl jq py3-configobj py3-pip py3-setuptools python3 python3-dev \ && apk add --no-cache gcc g++ zlib-dev libc-dev libressl-dev musl-dev libffi-dev postgresql-dev libjpeg-turbo-dev \ && apk add --no-cache rust cargo \ && pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple \ && python -m pip install --upgrade pip \ && sed -i.bak '/^setuptools==52.0.0.post20210125/d' requirements.txt \ && pip install -r requirements.txt \ && apk del curl jq py3-configobj py3-pip py3-setuptools python3 python3-dev \ && apk del gcc g++ zlib-dev libc-dev libressl-dev musl-dev libffi-dev postgresql-dev \ && apk del rust cargo \ && rm -rf /var/cache/apk/* COPY . . EXPOSE 8000 CMD ["/bin/sh", "/app/recruitment/start.local.sh"]
2021-09-09
1
⁶₆⁶₆⁶₆
容器化镜像有300MB多MB,还是太大了,要是我的话,能做到五分之一大小以内😂
2023-01-29
dived
不知道有没有用window同学没有 容器里的django服务(-v挂载的方式)用localhost, 127.0.0.1都是无法直接访问到主机(window)的redis服务的, 要用 redis://192.168.1.6(主机IP),6379这样的方式才能访问到。 容器和容器之间就没有这种问题。
2021-05-09
2
收起评论