材料准备:
树莓派3B,USB接头5V/1.5A,安卓数据线,HDMI转接线,键盘,8G以上优质SD卡,显示器(可有可无)VGA转接线(可有可无),一台正常使用的电脑(远程)。
*******有显示器的最好接显示器*******
下载镜像
官网下载树莓派镜像:RASPBIAN STRETCH LITE 镜像下载
******下载 RASPBIAN STRETCH LITE镜像******
RASPBIAN STRETCH LITE镜像是一个没有界面的镜像。
树莓派cpu和内存本来就很有限,不要浪费资源在桌面上。
******下载 RASPBIAN STRETCH LITE镜像******
烧制镜像
烧制镜像:树莓派3 从到手到开机
**********需要ssh远程请注意**********
在烧制完成后在镜像SDcard里面添加一个ssh的文件夹。
因为现在树莓pi系统默认是关闭了ssh连接的22号端口的,添加一个名字为ssh文件夹会自动打开。
**********需要ssh远程请注意**********
设置网络
有网线的直接接网线,没有网线的要设置Wi-Fi:树莓派设置Wi-Fi
*******************注意*****************
在设置网络后,通过命令ifconfig -a查看当前树莓派的ip地址
*******************注意*****************
树莓派3 播放音乐(网络音乐)(附加甜品/可有可无)
ssh远程登录树莓派(Mac用户)
启动终端输入:
ssh pi@192.168.1.107
( ssh pi@树莓派的ip )
提示输入密码,默认密码为:raspberry
*******************提示*****************
密码正确后会有一串英文提示说:不确定你连接的服务器就是你的目标服务器。是否还要继续连接。(选择yes)这串提示需要你了解ssh远程连接的原理。有一种黑客攻击技术叫中间人攻击
*******************提示*****************
*******************注意*****************
当你重新刷了系统要远程控制树莓派的时候会出现ssh密钥错误的问题。那么你需要到存放ssh密钥的地方把之前的ssh密钥删除才能连接上。
存放在Mac这个路径下:/Users/typ/.ssh
*******************注意*****************
树莓派搭建python环境服务器
服务器结构大致为:django+uwsgi+nginx+python+sqlite
配置python环境
系统本身自带了python2.7和python3.5。在这里我们搭建python3.5的环境。所以需要安装pip3,在安装pip3之前需要setuptools支持。
安装setuptools如下命令:
~:wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
~:tar -zxvf setuptools-19.6.tar.gz
~:cd setuptools-19.6.tar.gz
~:python3 setup.py build
~:python3 setup.py install
后安装pip
wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb
tar -zxvf pip-8.0.2.tar.gz
cd pip-8.0.2
python3 setup.py build
python3 setup.py install
*******************注意*****************
我门下载的路径需要注意,你当前在什么路径下,那么wget下载的软件包就在哪里。这里要注意一点,在我们没有指定安装路径的时候,系统会默认安装在 /usr/local 里面。
*******************注意*****************
sudo pip3 install --upgrade pip
更新pip3
安装django
sudo pip3 install django
安装uwsgi
sudo pip3 install uwsgi
*******************注意*****************
在安装uwsgi的时候你可能会报一个这样的错。
plugins/python/uwsgi_python.h:2:20: fatal error: Python.h: No such file or directory
#include <Python.h>
原因是缺少 python-dev这个库,输入如下命令安装:
sudo apt-get install python3-dev
*******************注意*****************
安装nginx
sudo apt-get install nginx
测试uwsgi
新建一个test.py文件如下命令:
sudo nano test.py
编辑如下内容:
# test.py
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello World"]
输入如下命令:
uwsgi --http :8000 --wsgi-file test.py
在浏览器输入地址,格式如下:
http://树莓派的ip地址:8000
eg: http://192.168.1.107:8000
如果出现Hello World就代表成功了。
*******************提示*****************
关闭uwsgi包括关闭服务器都是方法:control + c
*******************提示*****************
测试django
创建django项目
django-admin.py startproject helloworld
在helloworld目录下创建应用,比如blog:
python3 manage.py startapp blog
进入项目
cd helloworld
*******************目录文件介绍*****************
manage.py:
一个命令行工具,通过它可以调用Django shell和数据库等。键入python manage.py -h,查看它的相关功能。
init.py:
让 Python 把该目录当成一个开发包 (即一组模块)所需的文件。这是一个空文件,一般你不需要修改它。
settings.py:
项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。
urls.py:
django项目的URL设置。 可视其为你的django网站的目录, 负责把URL模式映射到应用程序。
wsgi.py:
服务器网关接口(Python Web Server Gateway Interface),web服务器和web服务程序或者框架之间的一种简单而通用的接口。
*******************目录文件介绍*****************
测试django
python3 manage.py runserver 192.168.1.107:8000
*******************注意*****************
你可能会出现如下提示:
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
执行:python3 manage.py migrate
然后你会发现在上一层的helloworld目录下面多了一个文件dg.sqlite3
然后重新启动服务执行:
python3 manage.py runserver 192.168.1.107:8000
运行成功显示如下信息
System check identified no issues (0 silenced).
December 21, 2014 - 08:56:00
Django version 1.7.1, using settings 'my_blog.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
还没有结束
你可能会出现这个提示:
Invalid HTTP_HOST header: '192.168.1.107:8000'. You may need to add '192.168.1.107' to ALLOWED_HOSTS
解决方法如下:
cd到helloworld目录文件下找到settings.py文件并打开。
sudo nano settings.py
找到ALLOWED_HOSTS = ['']
在这里请求的host添加* 改为如下:
ALLOWED_HOSTS = ['*']
control+x保存退出
*******************注意*****************
出现如下界面代表你安装成功