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.hqwc.cn/news/57552.html

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

相关文章

Shiro是什么?为什么要用Shiro?

前言 本文小新为大家带来 Shiro入门概述 相关知识,具体内容包括Shiro是什么,为什么要用 Shiro,Shiro与Spring Security 的对比,Shiro的基本功能(包括:基本功能框架,功能简介)&#x…

【六袆 - 国际化】SpringBoot国际化Message

模拟场景校验请求参数 private void checkParam(List<ReqAppAdminDTO> req) {// 校验管理员如果已存在&#xff0c;则抛出已存在异常req.forEach(item -> {AppAdminDO appAdminDO appAdminMapper.selectByAppIdAndAdminNo(item.getAppId(), item.getAdminNo());if (O…

Jmeter命令行运行实例讲解

1. 简介 使用非 GUI 模式&#xff0c;即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资 本文介绍windows下以命令行模式运行的方法。 1.1. 命令介绍 jmeter -n -t <testplan filename> -l <listener filename> 示例&#xff1a; jmeter -n -t test…

跨境商城系统源码的优势,助力企业海外扩张

跨境电商发展背景与趋势 随着全球化的推进和互联网技术的快速发展&#xff0c;跨境电商已成为企业海外拓展的重要途径。然而&#xff0c;跨境电商面临着诸多挑战&#xff0c;如复杂的海外市场、文化差异、海关监管等。为了解决这些问题&#xff0c;企业可以借助跨境商城系统源码…

试图将更改推送到 GitHub,但是远程仓库已经包含了您本地没有的工作(可能是其他人提交的修改)

这通常是由于其他人或其他仓库推送到了相同的分支上&#xff0c;导致您的本地仓库和远程仓库之间存在冲突。 错误信息&#xff1a; To github.com:8upersaiyan/CKmuduo.git ! [rejected] main -> main (fetch first) error: failed to push some refs to github.com:8upers…

无涯教程-Perl - continue 语句函数

可以在 while 和 foreach 循环中使用continue语句。 continue - 语法 带有 while 循环的 continue 语句的语法如下- while(condition) {statement(s); } continue {statement(s); } 具有 foreach 循环的 continue 语句的语法如下- foreach $a (listA) {statement(s); } co…

SpringBoot集成百度人脸识别实现登陆注册功能Demo(二)

前言 上一篇SpringBoot集成百度人脸demo中我使用的是调用本机摄像头完成人脸注册&#xff0c;本次demo根据业务需求的不同我采用文件上传的方式实现人脸注册。 效果演示 首页 注册 后端响应数据&#xff1a; 登录 后端响应数据&#xff1a; 项目结构 后端代码实现 1、Bai…

2022 robocom 世界机器人开发者大赛-本科组(国赛)

RC-u1 智能红绿灯 题目描述&#xff1a; RC-u1 智能红绿灯 为了最大化通行效率同时照顾老年人穿行马路&#xff0c;在某养老社区前&#xff0c;某科技公司设置了一个智能红绿灯。 这个红绿灯是这样设计的&#xff1a; 路的两旁设置了一个按钮&#xff0c;老年人希望通行马路时会…

职责链模式(C++)

定义 使多个对象都有机会处理请求&#xff0c;从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链&#xff0c;并沿着这条链传递请求&#xff0c;直到有一个对象处理它为止。 应用场景 在软件构建过程中&#xff0c;一个请求可能被多个对象处理&#xff0c;…

PotPlayer播放时、拖动播放条,CPU占用率高、卡顿

鼠标右击播放界面&#xff0c;滤镜/解码器管理 > 视频解码器 > 内置解码器/DXVA设置 > 勾选使用硬件加速&#xff0c;确定&#xff0c;关闭播放器再重新打开即可&#xff1b; 其他播放软件同理。 高级设置&#xff1a;https://www.hao4k.cn/thread-26475-1-1.html

冒泡排序 简单选择排序 插入排序 快速排序

bubblesort 两个for循环&#xff0c;从最右端开始一个一个逐渐有序 #include <stdio.h> #include <string.h> #include <stdlib.h>void bubble(int *arr, int len); int main(int argc, char *argv[]) {int arr[] {1, 2, 3, 4, 5, 6, 7};int len sizeof(…

Gson 添加数据默认值问题记录

问题&#xff1a;在用Gson add(key&#xff08;string类型&#xff09;&#xff0c;value&#xff08;必须是JsonElement子类&#xff09;&#xff09;时发现&#xff0c;value 传了 "" 空字符串&#xff08;非null&#xff09;&#xff0c;默认解析后返回null&#…