# 1. 虚拟的联网方式 桥连接, NAT 相当于一台新电脑. 自动分配和主机一个网段的IP 比如: 主机IP: 172.16.45.42 自动分配的: 172.16.45.xxx # 2. 要打开网络开关 忘记打开,后期手动改网络配置文件 # 3. 手动分区(分配文件大小) boot 启动分区: 保存系统启动的引导文件的,大小一般300M/500M swap内存交换分区: 物理内存不足时.充当内存用! / 跟分区: 占剩余的所有空间! linx系统中,无盘符概念! 只有文件!!! # 4. 一定记住root密码 所有linxu系统.默认最高权限用户:root. 默认常用密码:root/123456 # 5. 记住自己IP # window 电脑打查看Ip ipconfig -all # centos 查看IP ifconfig # 或 addr /address # ifconfig 默认不能用!,需要安装网络工具 yum -y install net-tools # -y表示忽略安装提示 # yum 和 pip一样,都可以从软件内置仓库中载 资源
1 VMWare使用 使用快照备份和还原系统[经常使用] 右击系统菜单----快照---拍摄快照-->输入名字和介绍 右击系统菜单----快照---快照管理--->选择恢复到哪个
虚拟机中系统的联网第1: 虚拟机联网方式(选桥接) 桥连接: 相当于一台局域网中的新电脑! 和主机在同一个网段 IP: xxx.xxx.xxx.xxx IP地址由4位组成! xxx.xxx.xxx.256 1和256 都被路由器使用! 主机: 172.16.45.44 同一局域网段: 172.16.45.xx IP的前两位相同, 就默认是一个局域网.是可以相互通讯的 NAT连接: 不同的是IP的第4位, 最多模拟254台电脑! NAT模式: 不同的是IP的第3位, xxx.xxx.1-255 组建大型局域网! 仅主机(虚拟机和主机之间通讯)
确保网络开关已经打开
# 1. 检查是否有IP, 检查网络状态 ifconfig # 如果有IP.联网成功了! service network status # 检查网络装填! 可用显示active表示可用! # 2. 查看网络配置文件(默认是动态分配IP,网络开关是关闭的:ONBOOT=no) cat /etc/sysconfig/network-scripts/ifcg-ens33 # 3. 手动打开网络开关 必须改: ONBOOT="yes" #打开 #4. 重新启动网络服务 service network restart第3: 手动修改网络配置文件打开网络开关
# 1. Linux自带vi文本编辑器 vim是vi的升级版(yum install -y vim) vi /etc/sysconfig/network-scripts/ifcg-ens33 # 2. 进入编辑模式 键盘i键---->表示进入编辑模式/状态 各种修改... # 3. 保存退出 按键 ESC -----退出编辑状态 :wq ---------- 保存退出 :q! ---------- 不保存退出 # 4. 必须重启网络服务器 service network restart
安装网络工具 centos mini版不自带网络工具的,需要手动下载 网络工具软件: net-tools
# 安装网络工具 yum -y install net-tools # 默认ifconfig 不能用! #查看IP的指令 ifconfig
客户端(SSH)连接 Putty FinalShell ( http://www.hostbuf.com/downloads/finalshell_install.exe ) 是SSH客户端,可以通过命令控制服务器 自带FTP软件,实现文件上传! XShell 等
Linux目录结构(重要) 在linux系统中,无盘符概念,都是文件/目录
自己软件安装位置: /usr/local 系统配置:/etc 还可以操作(home.root,opt) opt:是yum下载安装的地址
bin 存放二进制可执行文件(ls,cat,mkdir等) boot 存放用于系统引导时使用的各种文件 dev 用于存放设备文件 etc 存放系统配置文件 home 存放所有用户文件的根目录 lib 存放跟文件系统中的程序运行所需要的共享库及内核模块 mnt 系统管理员安装临时文件系统的安装点 opt 额外安装的可选应用程序包所放置的位置 proc 虚拟文件系统,存放当前内存的映射 root 超级用户目录 sbin 存放二进制可执行文件,只有root才能访问 tmp 用于存放各种临时文件 usr 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录 var 用于存放运行时需要改变数据的文件常用的Linux指令 查看常用命令文档 链接:https://pan.baidu.com/s/1uTwLeP8LbQkesVa2rXyV8w 提取码:wvia Linux命令速查手册 链接:https://pan.baidu.com/s/1x7fGKdNvcTyvW4R59C-tGg 提取码:jywc 软件下载和安装方式 从yum软件仓库源中下载 yum 和pip 指令一样,都可以从远程软件源/仓库中下载软件!
yum install -y xxxx #安装 -y 忽略安装提示! yum remove xxx #卸载 yum update #更新所有的软件源 yum update xxxx #更新某个 yum list #查看所有课安装的软件列表 yum search xxx #从软件源仓库中查找软件默认软件源地址:
添加新软件源(阿里的软件源仓库) centos 自带的源位于国外服务器,可能下载速度慢!可以添加国内的软件仓库/软件源! https://blog.csdn.net/jiangzhangha/article/details/85531022 wget 指令从某个网址中下载
# 默认Centos mini 版本 wget不存在 # 查本地wget指令是否可用 # rpm -qa| grep 'wget' (了解) # 安装 yum install -y wget # 下载python3.6.6 wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
window下完安装包,传到linux中 Django项目发布 centos7+Nginx+uwsgi+python3+django+其他依赖模块+ 数据库
python3.x --->底层运行环境 通过pip 安装第三方库(django,flask,pyMysqL,requests,....) uwsgi: 项目发布软件,发布django项目(启动后就可以在浏览器访问django项目 ) 默认访问地址: http://127.0.0.1:8000/ Nginx: web项目发布软件(比uwsgi强) 可以绑定域名! 做负载均衡.... 数据库: MysqL,sqlite, redis.......安装开发工具包 耗时长!安装完后一定制作快照
# 1. 更新yum库 yum update -y # 2. 下载开发工具集 yum -y groupinstall "Development tools" yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite- devel psmisc libffi-devel安装python3 centos 自带python2.7
# 1. 查看python是否安装 python -V # 2. 查看python指令解析流程 which python # 看到python位置 cd /usr/bin ls -al python* # 查看python相关指令
需要安装python3.x 实现方式:添加 python3指令--->软件连接指向python3.6.6的安装目录
# 1. 下载python3.6.6 cd /usr/local wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz # 2. 解压 tar -zxvf Python-3.6.6.tgz # 3. 进入解压目录,编译 cd /usr/local/Python-3.6.6 ./configure --prefix=/usr/local/python3 # 编译时会检查安装个包是否可用,且指定安装目录 # 4. 安装 cd /usr/local/Python-3.6.6 make make install # 5. 建立python3 指令软连接 ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3 # 6. 测试python是否可用 python3 -V #7. 建立pip3 软连接 ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip3 # 8.测试 pip3 -V pip3 list # 9. 更新pip3指令 pip3 install --upgrade pip卸载python3 所有安装步骤: 下载安装包, 解压, 进入解压目录 ,编译, 安装, 建软连接, 加配置 所有软件删除步骤: 1. 删了软件安装目录! 2. 删除软件连接! 3. 删除配置文件
# 1. 进入 /usr/bin 目录,查看软连接 cd /usr/bin ls -al python* ls -al piP* # 2. 删安装目录 (安装目录在/usr/local) cd /usr/local dir # 查看目录 rm -rf python3
建虚拟环境下载依赖库 习惯在 /data目录中新建 evn: 保存所有的虚拟环境! wwwroot : 保存所有项目源码! (个人习惯,其它人可根据自己的实际情况处理) 建目录
mkdir -p /data/env # env保存所有虚拟环境 -p表示递归创建:如果data目录不存在,会自动创 建! mkdir -p /data/wwwroot # 保存待发布的项目源码
创建虚拟环境 virtualenv/virtualenvwrapper django中文官网文档教程中使用 venv python3.3 以后自带的虚拟环境管理软件! pipenv pip和virtualenv的结合版 使用venv创建虚拟环境
# 1. 进入虚拟环境目录 cd /data/env # 2. 新建 python3 -m venv 虚拟环境名 python3 -m venv my_env01 # 新建的 # 3.激活 cd /data/env/my_env01/bin source activate # 退出 deactivate # 4. pip安装软件指令 pip install django==2.1.8 pip list pip uninstall django #5. 导出虚拟环境中软件文档列表 pip freeze > 任意文件名.txt pip freeze > requirements.txt # 6. 根据依赖包的文本文档导入 pip install -r 文件名.txt pip install -r requirements.txt下载uwsgi 发布web项目需要:uwsgi+Nginx [java,PHP支持] uwsgi: 是python的第三方模块/库! uwsgi 是web发布服务软件: 作用:1. 发布项目,在浏览器通过域名访问! 2. 动态解析请求,根据请求动态调用后台的业务逻辑! 2. 缺点: 对静态资源(文本,图片,视频,音乐)处理不好! uwsgi https://uwsgi-docs.readthedocs.io/en/latest/ConfigLogic.html 安装
# 1.进入虚拟环境并激活 cd /data/env/my_env01/bin source acticate # 2. 安装 pip install uwsgi # 注意:uwsgi必须进入虚拟环境后才能用! # 3.为了方便使用,可以添加软连接 ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi # 可以不创,如果不创建,必须激活虚拟环境才 能用安装Nginx(默认监听80) ngxinx : 强大的web项目发布服务软件! 通过yum安装 centos 的软件源中默认无Nginx软件,centos软件源位置: /etc/yum.repos.d/
# 1.添加Nginx的软件源 vi /etc/yum.repos.d/Nginx.repo # 按i进入编辑模式 [Nginx] name=Nginx repo baseurl=http://Nginx.org/packages/centos/7/$basearch/ gpgcheck=0enabled=1 # 保存退出 :wq # 2. 安装 yum install -y Nginx # 3. 添加为系统服务(可以开机自启动) systemctl enable Nginx # 4. 启动/停止/重启 systemctl start/stop/reload Nginx # 5. 查看运行的端口 netstat -atunp # 6. 本地访问Nginx默认发布的首页 curl 127.0.0.1:80 # 80可以不写 # 7. 关闭防火墙,外网可以通过Ip访问Nginx默认的首页 systemctl stop firewalld.service 通过源码安装 # 1. 先下载 cd /usr/local wget http://Nginx.org/download/Nginx-1.13.7.tar.gz # 2. 解压 tar -zxvf Nginx-1.13.7.tar.gz # 3. 编译 cd Nginx-1.13.7 ./configure # 4. 安装 make make insatll # 5. 启动并访问默认页面 cd /usr/local/Nginx/sbin ./Nginx #启动-------->启动成功后,可以访问默认的Nginx页面 ./Nginx -s stop #停止 ./Nginx -s reload #重启 ./Nginx -t #检查Nginx.conf配置文件的语法 # 6. 检查运行状态 netstat -atunp # 查看80端口 curl 127.0.0.1:80 # 本地访问默认页面 http://IP地址:80 # 远程访问Nginx默认页面 (前提:云服务器控制台手动打开80端口)
替换ngxin默认首页为自己的页面 # 1. 找Nginx安装位置 whereis Nginx #(安装位置etc 中, 网页在:/usr/share/Nginx/html中) # 2. 上传自己的网站到Nginx的html目录 # /usr/share/Nginx/html
注意:云服务器(比如:阿里云,腾讯云等...)依然拒绝访问!因为:云服务器的端口是通过后台管理界面控制的! 安装MysqL 数据库: 可以安装MysqL 也可以安装mariadb MysqL https://www.django.cn/article/show-2.html maraidb https://www.cnblogs.com/itzixueba/p/13949469.html 发布django项目 发布django 项目三个步骤 1. 本地新建djang项目正常运行 2. 配置uwsgi 3. 配置Nginx 4. 同步依赖模块 5. 上传项目到服务器 1. 新建django项目 django项目
#1. 允许任意IP访问 ALLOWED_HOSTS = ['*'] # 2. 导入自己的app INSTALLED_APPS = [ .... 'users' ] # 3.删除sqlite3的配置或配置连接MysqL # 4. 语言,时区.静态资源配置 LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'Asia/Shanghai' USE_I18N = True USE_L10N = True USE_TZ = False STATIC_URL = '/static/' # 相对路径方式查找 STATICFILES_Dirs = ( # 通过项目绝对路径找 os.path.join(os.path.join(BASE_DIR, 'static')), )配置uwsgi
#添加配置选择 [uwsgi] #配置和Nginx连接的socket连接 socket=127.0.0.1:8000 #配置项目路径,项目的所在目录 chdir=/data/wwwroot/mysite01/ #配置wsgi接口模块文件路径,也就是wsgi.py这个文件所在的目录名 wsgi-file=mysite01/wsgi.py #配置启动的进程数 processes=4 #配置每个进程的线程数 threads=2 #配置启动管理主进程 master=True #配置存放主进程的进程号文件 pidfile=uwsgi.pid #配置dump日志记录 daemonize=uwsgi.log uwsgi操作指令 # 启动 uwsgi --ini uwsgi.ini 显示 [uWsgi] getting INI configuration from uwsgi.ini 表明uwsgi运行成功 # # 可能通过ps -ef|grep uwsgi 查看确认是否uwsgi启动. #停止运行uwsgi,通过包含主进程编号的文件设置停止项目 uwsgi --stop uwsgi.pid #重启uwsgi uwsgi --reload uwsgi.pid3. 上传项目到/data/wwwroot/
# 1. 命令启动项目查看是否能正常运行 cd /data/my_env02/bin source activate #激活虚拟环境 # 2. 进入项目 cd /data/wwwroot/mysite01 python manage.py runserver # 3. 新打开SSH客户端,内网访问8000 curl 127.0.0.1:8000 #成功表示项目运行良好
# Nginx的yum安装方式默认安装好的路径为/etc/Nginx # 在/etc/Nginx/conf/中先备份一下Nginx.conf文件,以防意外。 cp Nginx.conf Nginx.conf.bak # 然后打开Nginx.conf,把原来的内容删除,直接加入以下内容: 失控的狗蛋: events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; server { listen 80; server_name www.django.cn; #改为自己的域名,没域名修改为127.0.0.1:80 charset utf-8; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8000; #端口要和uwsgi里配置的一样 uwsgi_param UWsgi_SCRIPT web01.wsgi; #wsgi.py所在的目录名+.wsgi uwsgi_param UWsgi_CHDIR /data/wwwroot/web01/; #项目路径 } location /static/ { alias /data/wwwroot/web01/static/; #静态资源路径 } } }# 执行./Nginx -t命令先检查配置文件是否有错,没有错就执行以下命令: # 重新启动Nginx systemctl reload Nginx
启动项目 1. runserver指令启动uwsgi测试项目是否正常访问! 2. 启动uwsgi 3. 检查Nginx配置语法 4. 启动ngxin 5. 检查:端口. 内网访问,外网访问 uwsgi启动8000
# 1. 进入虚拟环境,激活 cd /data/env/my_env02/bin source activate # 2. 在虚拟环境中进入项目,启动uwsgi cd /data/wwwroot/mysite01 uwsgi --ini uwsgi.ini #启动 # 显示: [uWsgi] getting INI configuration from uwsig.ini 表示成功 # 端口8000是否启动 netstat -atunp #8000是启动的启动Nginx的80端口
# 1. 进入Nginx目录 cd /usr/local/Nginx/sbin # 2. 检测语法 ./Nginx -t # Nginx: the configuration file /usr/local/Nginx/conf/Nginx.conf Syntax is ok Nginx: configuration file /usr/local/Nginx/conf/Nginx.conf test is successful # 3. 启动 ./Nginx #启动 ./Nginx -s reload #重启 ./Nginx -s stop #停止 # 4. 检测80 netstat -atunp # 5. 本地测试 curl 127.0.0.1:80 # 6. 外网测试 http://172.16.45.53:80 # #7. 通过域名访问 http://www.xxx.com
阿里云服务器开放端口 网络与安全---安全组--->创建一个安全组---配置
小结:检查系统环境
# 1. 检查python指令是否可用? 检查python3指令是否可用域名服务器介绍 python -V python3 -V # 2.python 指令的解析过程 which python3 cd /usr/bin ls -al python* # 看到python命令的指向! # 3. 查看ngxin是否启动(80端口打开就是启动) netstat -atunp #查看所有正在运行的端口 # 4. 启动/暂停/重启 Nginx systemctl start/stop/reload Nginx kill -9 软件PIP编号 # kill -9 49195 (强制杀死进程,经常需要杀死多遍) # 5. 启动Nginx,检查启动状态 systemctl start Nginx netstat -atunp # 6. 可以访问默认的ngixn首页 curl 127.0.0.1:80 #80可省略 # 7.关闭防火墙(云服务器通过后台管理控制防火墙,不是通过命令控制的) systemctl stop firewalld.service # 8. 通过浏览器输入IP地址可以访问成功 http://IP:80 #http://172.16.45.53 # 9. 必须清楚浏览器的缓存! 否则错误页面会一直存在!
域名:(网址,方便记忆) www开头的域名是一级域名, 需要购买 ( www.zhouzhengyang.cn ) 不以www开头的域名叫二级域名或子域名 1个一级域名包含N个二级域名
# 百度一级域名 www.baidu.con # 二级/子 map.baidu.com #百度地图 tieba.baidu.com # 百度贴吧 news.baidu.com # 百度新闻 zhidao.baidu.com #百度知道 m.baidu.com #百度wap页 .com # 表示商业公司 .cn #中国 .org #国际域名 .edu #学校等教育机构 .gov #政府机构 ... .中国 .love .top # 域名购买: 阿里云, 百度云,腾讯云, 华为云 ,新浪云 # 阿里云域名购买 https://wanwang.aliyun.com/?spm=5176.19720258.J_8058803260.1294.e9392c4apaoN4P
DNS域名解析 必须配置前缀: www/@/* 二级域名前缀: 任意 m.xxx.com #表示手机网站 blog.xxx.com #表示博客网站 mp3.xxx.com #表示音乐网站
服务器 服务器: 大内存,大硬盘,高cpu的 电脑主机! 而且24小时运行! 建议购买:BAT 三大公司云服务器 和 华为云服务器 购买学生机 https://www.baidu.com/s? wd=%E4%BA%91%E6%9C%8D%E5%8A%A1%E5%99%A8%20%E5%AD%A6%E7%94%9F%E6%9C%BA&rsv_spt=1&rs v_iqid=0xb9158799000379dd&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf- 8&tn=baiduhome_pg&rsv_enter=1&rsv_dl=tb&rsv_sug2=0&rsv_btype=i&inputT=19738&rsv_su g4=22769 阿里云服务器流程 https://blog.csdn.net/yundashi168/article/details/108536303腾讯校园服务器 https://cloud.tencent.com/act/campus? fromSource=gwzcw.3775923.3775923.3775923&utm_medium=cpc&utm_id=gwzcw.3775923.37759 23.3775923
阿里服务器 https://www.aliyun.com/1111/ecs?utm_content=se_1007409450
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。