Toggle navigation
Mr.Strawberry's House
文章
网址导航
更多
甜品站
杂物间
新版博客
关于 快刀切草莓君
友情链接
妙妙屋开发日志
注册
登录
搜索
文章列表
分类 标签
归档
# 网站部署迁移LOG 本文用于记录妙妙屋过去和未来的服务器部署 [TOC] # 部署网站LOG 本次重装主要是更新了系统,并且部署新版本的网站。 服务器使用的是腾讯云,系统选择ubuntu18.04.1 TSL ## linux环境配置 主要是安装一些网站需要的服务如Nginx,Mysql,python3等 ``` # 更新系统包 sudo apt-get update sudo apt-get upgrade ``` ### root 设置root用户密码 `sudo passwd root` ### 安装宝塔面板 `wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh` ### 在宝塔面板中配置 Nginx、mysql、ftp、php、phpmyadmin Nginx添加站点 ### Python3虚拟环境 1. 安装`pip` ``` # 安装Pip sudo apt-get install python3-pip # 检查 pip 是否安装成功 pip -V ``` 2. `virtualenv` 3. `virtualenvwrapper` ``` bashrc export WORKON_HOME=$HOME/.virtualenvs # 虚拟环境创建的地方 export VIRTUALENVWRAPPER_PYTHON=/usr/local/python36/bin/python3 # 指定虚拟使用的python解释器路径 source /usr/local/bin/virtualenvwrapper.sh # 每次登陆用户自动执行下脚本, ———————————————— 版权声明:本文为CSDN博主「路或遥」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/sinat_29173167/article/details/79667409 ``` ## 获取项目 项目是在windows上开发的,要在linux上完成部署,我打算通过github进行文件同步。 ### 建立仓库 上传项目 1. 编写`.gitignore`,忽略设置和数据库文件 2. 将虚拟环境的条目导入`requirement.txt` 使用`pip freeze > requirements.txt` 3. git初始化并提交到仓库 ### 服务器从仓库获取项目 1. ssh key 2. clone 3. `pip install -r requirement.txt` ## nginx和uwsgi ### nginx 添加站点信息 ``` server { listen 80; listen [::]:80; server_name www.zrawberry.com *.zrawberry.com; index index.php index.html index.htm default.php default.htm default.html; root /www/wwwroot/zrawberry_www; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:9000; } location /static/ { alias /www/wwwroot/zrawberry_www/static/; } } ``` ### uwsgi ``` run.ini [uwsgi] socket = 127.0.0.1:9000 chdir = /www/wwwroot/zrawberry_www/ wsgi-file = Zrawberry2020/wsgi.py daemonize = Zrawberry2020/uwsgi.log processes = 2 thread = 4 pidfile = Zrawberry2020/uwsgi.pid 运行 uwsgi uwsgi.ini ``` # 服务器迁移LOG (April 4 2020) 妙妙屋此前一直在使用腾讯云服务器,最近因为升级了服务器配置,无法再降回学生优惠。经过一番思考我选择将网站搬移到阿里云上,在此记录此次搬移的过程。 ## 系统配置 服务器选择的是张家口的机子,系统是ubuntu18.04 x64。 ### 用户 服务器进来是root账户,随后我创建了新的用户。 **问题1**:新用户无法使用tab补全功能 - 原因:未给新用户指定 bash - 已添加的用户:sudo chsh -s /bin/bash username - 为以后要添加的用户:sudo vim /etc/default/useradd 修改$SHELL = /bin/bash **问题2**:新用户不在sudo列表中 [解决方案](href="https://www.linuxidc.com/Linux/2016-07/133066.htm") **问题3**:每次登录都要手动 source ~./.bashrc [解决方案](https://www.jianshu.com/p/c4946024b946) ### 宝塔面板 `wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh` https://www.bt.cn/ 安装完成后选择 LNMP 模式安装nginx php mysql(虽然我没有用到php) ## 环境配置及项目部署 ### Git SSH Key: 生成钥匙对 `ssh-keygen -t rsa -C "li.zaaachary@gmail.com"` 查看公钥内容 `cat .ssh/id_rsa.pub` 将公钥添加到GitHub 从GitHub上通过clone将项目下载下来 ### python虚拟环境设置 安装pip `sudo apt install python3-pip` 安装virtualenv 以及 virtualenvwrapper **问题1**: 无法使用workon 配置virtualenvwrapper [参考](https://blog.csdn.net/gzy686/article/details/8181128) ``` vim ~/.bashrc 加入 export WORKON_HOME=/home/Zachary/virtualenvs # 环境文件夹 source /home/Zachary/.local/bin/virtualenvwrapper.sh # virtualenvwrapper路径 VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 #python路径 source ~/.bashrc ``` **问题2**:mkvirtualenv创建的是python2的虚拟环境 解决:卸载python2的virtualenv 重装python3 virtualenv ### 配置nginx ``` location / { include uwsgi_params; uwsgi_pass 127.0.0.1:9000; } location /static/ { alias /www/wwwroot/zrawberry_comstatic/; expires 7d; } location /media/ { alias /www/wwwroot/zrawberry_com/media/; } #301-START if ($host ~ '^www.zrawberry.com'){ return 301 http://zrawberry.com$request_uri; } ``` ### 运行django项目 在virtualenv和外部都安装uwsgi ``` # uwsgi.ini [uwsgi] socket = 127.0.0.1:9000 chdir = /www/wwwroot/zrawberry_com/ wsgi-file = Zrawberry2020/wsgi.py daemonize = Zrawberry2020/uwsgi.log processes = 2 thread = 4 pidfile = Zrawberry2020/uwsgi.pid uwsgi uwsgi.ini ``` ## 域名迁移, 备案 腾讯云->阿里云
文章信息
标题:网站部署迁移LOG
作者:快刀切草莓君
分类:网站开发
发布时间:2020年1月27日
最近编辑:2020年4月4日
浏览量:1274
↑