macOS下Django环境搭建-docker运行Django

1. macOS升级pip

/Library/Developer/CommandLineTools/usr/bin/python3 -m pip install --upgrade pip

2. 卸载Python3.9.5版本

$ sudo rm -rf /usr/local/bin/python3 
$ sudo rm -rf /usr/local/bin/pip3 
$ sudo rm -rf /Library/Frameworks/Python.framework

3. 安装Python3.11.4版本

在官网下载Python macOS安装包

Python Release Python 3.11.4 | Python.org

滑到最下面  下载python-3.11.4-macos11.pkg

python3 --version 然后敲击回车键,命令结果如下图所示:
好,此步很重要! 关闭终端界面,再重新打开终端,继续输入以下命令:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py ,输入完毕后敲击回车键,等待下载完成即可

注释:需要关闭并重新打开终端是因为在第四步里面写了个python,终端就默认成了python的运行环境了

继续输入命令:

python3 get-pip.py 敲击回车键 ,等待运行完毕,最下一行显示:

Successfully installed pip 21-2.4 wheel-0.37.0 (后面的数字 21.2.4 和 0.37.0 是版本号,随着时间推移实际版本号更新后可能会与我给出的不一致,安装成功即可)

点击终端界面左上角红叉关闭终端,再按照步骤(1)重打开终端界面,直接输入命令:

pip --version 敲击回车,就会得到 pip 的版本信息和已经成功挂载到 python3 的下面,如下图所示:

如遇:-bash: /usr/local/bin/pip: /usr/bin/python: 坏的解释器: 没有那个文件或目录

所以修改/usr/local/bin/pip3.11文件即可

vim /usr/local/bin/pip3.11                                             

然后修改第一行/usr/bin/python 为/usr/bin/python3即可


之后运行pip3 -V后如下结果即可

 

 $pip3 -V
pip 23.2.1 from /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pip (python 3.11)

如果失败,vim ~/.zshrc

alias python3='/usr/local/bin/python3'
alias python=python3

 右上角点击添加,Python interpreter选择Python3.11 

代码可以正常运行,但是屏幕上方会提示Invalid Python interpreter selected for the project,点开之后还是设置解释器的步骤。

这可能是因为python安装好之后发生过改变(例如卸载后在同一个目录下安装了新版本),只需要

如果显示invalid,Invalid Python interpreter selected for the project 点击pycharm-preference-Python Interpreter-show all 添加py环境

4. 创建虚拟环境Creating Virtual Environments

在终端创建的步骤如下

python3 -m venv tutorial-env   创建虚拟环境

source tutorial-env/bin/activate   进入虚拟环境

deactivate   退出虚拟环境

5. 安装运行Django

按照readme安装

pip install -r requirements.txt
python init.py

如果上面的requirements.txt安装失败则手动安装

5.1 在命令行中输入以下命令进行Django的安装 最新版本为4.2.1

$ pip3 install Django==4.2.1


5.2 安装完成后,可以在命令行中输入以下命令检查Django是否成功安装:
python3 -m django --version

5.3 创建Django项目

在命令行中输入以下命令创建Django项目

django-admin startproject projectname

实际操作:django-admin startproject qatest
其中,projectname是项目的名称,可以自行定义。此命令会在当前目录下创建一个名为projectname的目录,其中包含Django项目的基本文件结构。

测试Django项目
创建Django项目后,可以使用以下命令在本地测试项目:

cd projectname

实际操作:cd qatest
python3 manage.py runserver  因为我的本地~/.zshrc无法刷新成功 如遇zsh: command not found: python3 manage.py
执行  /usr/local/bin/python3 manage.py runserver
其中,projectname是Django项目的名称。打开浏览器,访问http://localhost:8000/ 即http://127.0.0.1:8000/,如果能够看到Django的欢迎页面,说明Django项目已经成功运行

### 1.运行
- download project
- Install(项目升级时需要删除目录下db.sqlite文件,重新install)  
pip install -r requirements.txt
python init.py  设置用户名邮箱密码
- Run(Visit http://127.0.0.1:8000/admin)  

如果忘记了密码删除rm -rf db.sqlite3

uvicorn django_scrcpy.asgi:application --host 0.0.0.0 --port 8000 --workers 4

 

6. Python自动绘制UML类图、函数调用图(graphviz)

brew install graphviz 如果安装失败则在官网下载

Source Code | Graphviz

 下拉下载

  • graphviz-8.1.0.gz, sha256

cd /Users/qa/Downloads/graphviz-8.1.0

./configure
make
make install

7. mac安装docker

mac安装docker: 终端安装完毕后,一定要点击Applications中的docker,按提示完成安装

升级brew

brew update 如果升级失败则删除再重新升级
rm -rf /usr/local/etc/bash_completion.d/brew
rm -rf /usr/local/share/zsh/site-functions/_brew
rm -rf /usr/local/share/man/man1/brew.1
rm -rf /usr/local/share/doc/homebrew
brew update

安装完成验证

docker --version

8. docker容器运行Django

9. 代码解读

init.py   删除数据库 设置用户名 邮箱 密码 创建超级管理员

100. 参考资料

How to install Django | Django documentation | Django

Python Release Python 3.11.4 | Python.org

MacOS (11.5) 安装Python3 (3.9) 和 pip 教程 - 知乎

-bash: /usr/local/bin/pip: /usr/bin/python: 坏的解释器: 没有那个文件或目录_Moscato_mao的博客-CSDN博客

12. Virtual Environments and Packages — Python 3.11.4 documentation

python代码能运行,但会提示Invalid Python interpreter selected for the project_山_的那边的博客-CSDN博客

Python自动绘制UML类图、函数调用图(Call Graph)_pycallgraph_虾米小馄饨的博客-CSDN博客

 Source Code | Graphviz

[干货]Docker安装及常用命令 - 知乎

Django进行docker服务器部署_django docker部署_Loading_create的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/29767.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务——ES实现自动补全

效果展示 在搜索框根据拼音首字母进行提示 拼音分词器 和IK中文分词器一样的用法,按照下面的顺序执行。 # 进入容器内部 docker exec -it elasticsearch /bin/bash# 在线下载并安装 ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch…

【二分】CF1623 C

Problem - 1623C - Codeforces 题意: 思路: 肯定是二分,我们去二分最小值,然后check的时候最小值要大于mid check的时候要让最小值尽可能大 注意到我们不需要去管最大值,只需要最小值尽可能大就好了,因…

dirsearch_暴力扫描网页结构

python3 dirsearch 暴力扫描网页结构(包括网页中的目录和文件) 下载地址:https://gitee.com/xiaozhu2022/dirsearch/repository/archive/master.zip 下载解压后,在dirsearch.py文件窗口,打开终端(任务栏…

SpringBoot案例-部门管理-查询

查看页面原型,明确需求需求 页面原型 需求分析 阅读接口文档 接口文档链接如下: https://onedrive.live.com/?cidC62793E731F0C1BE&idC62793E731F0C1BE%2148 思路分析 用户发送请求,交由对应的Controller类进行处理,Con…

通讯协议034——全网独有的OPC HDA知识一之聚合(三)时间加权平均

本文简单介绍OPC HDA规范的基本概念,更多通信资源请登录网信智汇(wangxinzhihui.com)。 本节旨在详细说明HDA聚合的要求和性能。其目的是使HDA聚合标准化,以便HDA客户端能够可靠地预测聚合计算的结果并理解其含义。如果用户需要聚合中的自定义功能&…

设计模式-简单工厂模式(静态工厂模式)java实现

介绍 简单工厂模式根据所提供的参数数据返回几个可能类中的一个类的实例。通常返回的类都有一个公共的父类和公共的方法。 意图 提供一个类,负责根据一定的条件创建某一具体类的实例。同时使用工厂模式也是为了隐藏创建对象的过程 角色及其职责 (1)工厂(Creator…

问题解决和批判性思维是软件工程的重要核心

软件工程的重心在于问题解决和批判性思维(合理设计和架构降低复杂度),而非仅局限于编程。 许多人误以为软件工程就只是编程,即用编程语言编写指令,让计算机按照这些指令行事。但实际上,软件工程的内涵远超…

C语言---数据结构实验---哈夫曼树及哈夫曼编码的算法实现---图的基本操作

文章目录 写在前面哈夫曼树及哈夫曼编码的算法实现实验内容代码实现 图的基本操作实验内容代码实现 写在前面 本篇实验代码非本人写,代码源自外部,经调试解决了部分warning和error后在本地vs上可以正常运行,如有运行失败可换至vs 未来会重构…

一、初识 Spring MVC

文章目录 一、初始 Spring MVC1.1 回顾 MVC 模式1.2 回顾 Servlet 一、初始 Spring MVC 什么是 Spring MVC Spring MVC就是一个 Spring 内置的 MVC 框架。 MVC框架,它解决WEB开发中常见的问题(参数接收、文件上传、表单验证、国际化等等),而且使用…

Python web实战之细说Django的中间件

🔑 关键词:Python Web 开发、Django、中间件 今天分享Python Web开发中的一个重要成员:Django的中间件。介绍中间件的概念、作用及其在实战中的应用。 1 什么是中间件 在Python Web开发中,中间件(Middleware&#xff…

vue中使用this.$refs获取不到子组件的方法,属性方法都为undefined的解决方法

问题描述 vue2中refs获取不到子组件中的方法?,而获取到的是undefined 原因及解决方案: 第一种、在循环中注册了很多个ref 因为注册了多个ref,获取是不能单单知识refs.xxx,需要使用数组和索引来获取具体一个组件refs[…

yolov5目标检测多线程C++部署

C多线程复习 下面的代码搭建了简单的一个生产者-消费者模型&#xff0c;在capture()函数中进行入队操作&#xff0c;infer()函数中进行出队操作&#xff0c;为了模拟采图-推理流程&#xff0c;在函数中调用Sleep()函数延时。 #include <iostream> #include <string&…

Rabbitmq的消息确认

配置文件 spring:rabbitmq:publisher-confirm-type: correlated #开启确认回调publisher-returns: true #开启返回回调listener:simple:acknowledge-mode: manual #设置手动接受消息消息从生产者到交换机 无论消息是否到交换机ConfirmCallback都会触发。 Resourceprivate Rabb…

adb用法,安卓的用户CA证书放到系统CA证书下

设备需root&#xff01;&#xff01;设备需root&#xff01;&#xff01;设备需root&#xff01;&#xff01; ​​​​​​​测试环境&#xff1a;redmi 5 plus、miui10 9.9.2dev&#xff08;安卓8.1&#xff09;、已root win下安装手机USB驱动&#xff08;过程略&#xff0c…

【Spring专题】Spring之底层架构核心概念解析

目录 前言前置知识课程内容一、BeanDefinition&#xff1a;图纸二、BeanDefinitionReader&#xff1a;图纸读取器——Spring工厂基础设施之一2.1 AnnotatedBeanDefinitionReader2.2 XmlBeanDefinitionReader2.3 ClassPathBeanDefinitionScanner 三、BeanFactory&#xff1a;生产…

关于在c++中使用数组名作为函数参数,或者使用数组名的地址作为函数参数问题的一些研究

前言 使用数组名作为函数参数&#xff0c;或者使用数组名的地址作为函数参数&#xff0c;常常出现于对于字符串的读入问题之中。 常有以下两种写法&#xff1a; 这是使用数组名作为函数参数 #include<cstdio> char s[100]; int main() {scanf("%s",s); }在…

Jmeter-获取接口响应头(Response headers)信息进行关联

文章目录 Jmeter-获取接口响应头&#xff08;Response headers&#xff09;信息进行关联使用正则表达式提取器将Set-Cookie的值提取出来在其余接口中关联该提取信息运行查看关联是否成功 Jmeter-获取接口响应头&#xff08;Response headers&#xff09;信息进行关联 获取某一…

重发布选路最佳实验

题目 IP地址配置 R1&#xff1a; R2&#xff1a; R3&#xff1a; R4&#xff1a; 双点重发布 R2&#xff1a; rip 1 version 2 network 12.0.0.0 network 2.0.0.0 import-route ospf 1 ospf 1 import-route rip 1 route-policy R2 area 0.0.0.0 network 23.1.1.0 0.0…

ElasticSearch:环境搭建步骤

1、拉取镜像 docker pull elasticsearch:7.4.0 2、创建容器 docker run -id --name elasticsearch -d --restartalways -p 9200:9200 -p 9300:9300 -v /usr/share/elasticsearch/plugins:/usr/share/elasticsearch/plugins -e "discovery.typesingle-node" elasti…

腾讯云COS的快速接入

背景 最近在研究一个剪贴板粘贴工具&#xff0c;实现粘贴图片&#xff0c;返回可访问的地址&#xff0c;这个在我的哔哩哔哩上有出一期视频&#x1f92d;。但是&#xff0c;我发现部分博客平台不能正常的转载我的图片链接&#xff0c;于是研究了一下腾讯云的COS&#xff08;阿…