云服务器申配置 云服务器如何配置
本人用是的阿里云的ubuntu16.04 64位版服务器,其他Linux服务器大同小异
所需软件在本文末尾提供永久下载链接
一、创建用用户:
1.添加用户:
useradd -m 用户名2.设置用户密码:
passwd 用户名3.将用户添加到用户组:
usermod -a -G adm 用户名usermod -a -G sudo 用户名4.为用户添加权限:
vim /etc/sudoers在 root ALL=(ALL:ALL) 下添加下边代码,不要注释这句代码!
用户名 ALL=(ALL:ALL) ALL:wq!5.设置vim:
su - 你的用户名vim .vimrcsyntax on set nu set autoindent set smartindent set tabstop=4 set shiftwidth=4 set showmatch set ruler set cindent set background=dark:wq!二、安装python3.6
1.更新源:
sudo apt-get update2.安装安全公共组件:
sudo apt-get install software-properties-common3.添加python3.6环境:
sudo add-apt-repository ppa:jonathonf/python-3.64.再次更新源:
sudo apt-get update5.安装python3.6:
sudo apt-get install python3.66.配置python3.6:
cd /usr/bin/sudo rm pythonsudo ln -s python3.6 python7.安装pip:
sudo apt-get install python3-pip8.升级pip:
sudo python pip install --upgrade pip三、安装虚拟环境:
sudo pip install virtualenvsudo pip install virtualenvwrappermkdir ~/.virtualenvsvim ~/.bashrc在末尾添下边的两行代码
export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/:wq!source ~/.bashrc四、安装MySQL:
注意:需要先设置阿里云服务器安全组,否则用Windows无法连接MySQL数据库!!!
拓展: 安全组配置步骤图如下
1.安装:
sudo apt-get install mysql-server安装过程中需要设置mysql的登录密码
2.开启root用户的远程访问权限:
mysql -uroot -p(回车,输入密码)use mysql;update user set host = '%' where user = 'root';grant all privileges on *.* to 'root'@'%' identified by '密码';此密码是你想更新的密码,用原来的密码也可以
flush privileges;quitsudo vim /etc/mysql/mysql.conf.d/mysqld.cnf将bind-address = 127.0.0.1修改为bind-address = 0.0.0.0
:wqsudo service mysql restart拓展:服务命令
启动服务:sudo service mysql start 停止服务:sudo service mysql stop 重启服务:sudo service mysql restart
五、安装MongoDB:
注意:
根据业界规则,偶数为稳定版,如1.6.X,奇数为开发版,如1.7.X
32bit的mongodb最大只能存放2G的数据, 64bit就没有限制
1.将MongoDB安装包上传至阿里云:
在Windows上下载并安装Git工具,然后在Git工具上切换到你的存放MongoDB压缩包的目录下
scp -r mongodb-linux-x86_64-ubuntu1604-3.4.0.tgz 服务器用户名@你的域名:/home/用户名注意: 第一次需要输入yes,不能直接回车,然后输入阿里云密码
拓展: 将服务器文件下载到本地:
scp 用户名@域名:/home/用户名/a.py . 将a.py从服务器上下载到本地当前目录
2.解压MongoDB:
tar -zxvf mongodb-linux-x86_64-ubuntu1604-3.4.0.tgz3.移动解压后的文件:
sudo mv mongodb-linux-x86_64-ubuntu1604-3.4.0 /usr/local/mongodb4.配置环境变量:
sudo vim /etc/profile在最下边添加下边代码
export PATH=/usr/local/mongodb/bin:$PATH5.使环境变量生效:
source /etc/profile6.添加配置文件:
sudo vim /etc/mongod.conf添加以下代码
# 详细记录输出 verbose=true # 指定服务器端口,默认端口27017 port=27017 # 指定MongoDB日志文件,注意是指定文件不是目录 logpath=/var/log/mongodb/logs/mongodb.log # 使用追加的方式写日志 logappend=true # 指定数据库路径 dbpath=/var/lib/mongodb/db # 设置每个数库将保存在一个单独的目录 directoryperdb=true # 启用验证 auth=false # 以守护进程的方式运行MongoDB,创建服务器进程 fork=true # 安静退出 quiet=true以下是不含注释的配置文件
verbose=true port=27017 logpath=/var/log/mongodb/logs/mongodb.log logappend=true dbpath=/var/lib/mongodb/db directoryperdb=true auth=false fork=true quiet=true:wq7.创建各种目录及文件:
sudo mkdir /var/log/mongodb/logs -psudo touch /var/log/mongodb/logs/mongodb.logsudo mkdir /var/lib/mongodb/db -p8.设置开机自启:
cd /etc/init.dsudo vim mongodb拓展:
对于一些冗长的代码复制粘贴的时候,vim粘贴后格式全部错乱,完全无法阅读。
解决办法:esc进入命令行模式后,输入 :set paste,然后再i进入粘贴编辑模式,即可正常复制并保留原有格式~
添加以下代码块
#!/bin/sh ### BEGIN INIT INF # Provides: mongodb # Required-Start: # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: mongodb # Description: mongo db server ### END INIT INFO . /lib/lsb/init-functions PROGRAM=/usr/local/mongodb/bin/mongod MONGOPID=`ps -ef | grep 'mongod' | grep -v grep | awk '{print $2}'` test -x $PROGRAM || exit 0 case "$1" in start) ulimit -n 3000 log_begin_msg "Starting MongoDB server" $PROGRAM -f /etc/mongod.conf log_end_msg 0 ;; stop) log_begin_msg "Stopping MongoDB server" if [ ! -z "$MONGOPID" ]; then kill -15 $MONGOPID fi log_end_msg 0 ;; status) ;; *) log_success_msg "Usage: /etc/init.d/mongodb {start|stop|status}" exit 1 esac exit 09.添加可执行权限:
sudo chmod +x mongodb10.注册成开机脚本:
cd ~sudo update-rc.d mongodb defaults拓展: 移除开机脚本:
sudo update-rc.d mongodb remove
11.启动:
sudo service mongodb start启动报错:
Faild to start mongod.service:Unit mongod.servicenot found
解决方案:
sudo chown root:root /tmp
sudo chmod 777 /tmp
sudo ls -ld /tmp
12.查看服务是否开启:
ps -aux | grep mongo拓展: 停止服务:
sudo service mongodb stop
13. 客户端连接:
mongoexit六、Redis安装:
使用WinSCP将压缩包上传至服务器
1、安装tcl:
sudo apt-get install tcl2.解压安装包:
tar -zxvf redis-3.2.5.tar.gz3.创建安装目录:
sudo mv redis-3.2.5 /usr/local/rediscd /usr/local/redis/4.源码编译安装
# 编译 sudo make# 测试 sudo make test# 安装 sudo make install5.测试:
# 启动redis服务器 /usr/local/redis/src/redis-server另启一个终端运行以下代码
# 启动redis客户端 /usr/local/redis/src/redis-cliping出现PONG则成功
# 退出redis exit6.创建相关目录:
# 配置文件路径 sudo mkdir /etc/redis# 数据库存储路径 sudo mkdir /var/lib/redis7.安装服务:
cd /usr/local/redis/utils/sudo ./install_server.sh一路next安装
8.停止服务:
ps ajx | grep redissudo kill -9 对应进程号9.重启测试:
redis-serverredis-cli10.修改配置文件:
sudo vim /etc/redis/6379.conf将 #bind 127.0.0.1修改为以下内容
bind 0.0.0.0将requirepass foobared修改为以下内容
requirepass 密码11.重启服务:
sudo redis-server /etc/redis/6379.conf七、安装Git:
1.安装:
sudo apt-get install git2.配置:
git config --global 'git注册用户名'git config --global user.mail 'git注册邮箱'3.生成秘钥:
ssh-keygen -t rsa -C 'git注册邮箱'一路next
4.将公钥添加github:
cd ~cd .ssh# 复制公钥 cat id_rsa.pub将公钥添加到github
5.验证公钥:
ssh -T git@第一验证需要手动输入yes,然后验证;
如果验证通过,Github上的公钥将变绿。
八、项目上线部署:
1.安装zlib依赖库:
cd ~sudo apt-get install zlib1g-dev2.解压相关文件:
tar -zxvf nginx-1.11.3.tar.gztar -zxvf openssl-1.0.1.tar.gztar -zxvf pcre-8.41.tar.gz3.进入nginx解压目录:
cd nginx-1.11.3/4.配置环境:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre=../pcre-8.41 --with-openssl=../openssl-1.0.15.编译并安装:
sudo make && sudo make install可以分布进行:
编译:make
安装:sudo make install
6.启动nginx服务:
sudo /usr/local/nginx/sbin/nginx停止nginx:sudo /usr/local/nginx/sbin/nginx -s stop
7.查看nginx服务是否启动:
ps -aux | grep nginx8.验证nginx是否启动成功:在浏览器地址栏输入:
http://你的域名/9.配置nginx:
cd /usr/local/nginx/conf/sudo vim nginx.conf取消对#pid logs/nginx.pid;的注释,并在其下添加:
worker_rlimit_nofile 65535;可以不用添加,系统默认65535,ulimit -a命令可以查看,ulimit -n 65535命令可以设置
events { use epoll;(在此处添加此命令) worker_connections 1024; }开启#tcp_nopush on;并修改如下内容:
server { listen 80; server_name localhost 你的域名; charset utf-8;修改location / {
root html;
index index.html index.htm;
}如下:
开启#gzip on;并在下方添加如下代码:
upstream suyin { server 你的服务器ip:8000 weight=1 max_fails=1 fail_timeout=300s; }suyin是一个随意的名字,你想用哪个名字就用哪个名字
配置静态文件:
在error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}下边添加如下代码:
重启nginx:
sudo /usr/local/nginx/sbin/nginx -s reload查看是否重启:
ps -aux | grep nginx10.部署Django项目:
安装Django:
sudo pip install Django==1.11.4修改setting设置:
DEBUG = False ALLOWED_HOSTS = ["*",]安装:
sudo apt-get install libpython3.6-dev如果安装后安装uwsgi依旧报错,可以尝试安装yum install python3-devel解决
安装:
sudo pip install uwsgi在家目录下建立一个work文件夹,并将你的Django项目放入work中
在工程目录下创建名为uwsgi.ini的文件,并在文件中添加以下代码:
[uwsgi] #socket为线上使用,http为直接作为web服务使用 socket=0.0.0.0:8000 #http=0.0.0.0:8000 chdir=/home/你的用户名/work/project wsgi-file=project/wsgi.py processes=4 threads=2 master=True pidfile=uwsgi.pid deamonize=uwsgi.logsocket=0.0.0.0:8000 # 通过nginx访问项目
http=0.0.0.0:8000 # 直接访问Django项目
启动:
cd project/uwsgi -d --ini uwsgi.ini停止:uwsgi --stop uwsgi.pid
配置静态文件:
在setting中修改如下:
STATIC_ROOT = '/var/www/myApp(你的应用名)/static/' STATIC_URL = '/static/' STATICFILES_DIRS=[ os.path.join(BASE_DIR, "static") ]创建静态文件目录:
cd /varsudo mkdir www/myApp(你的应用名)/static -p更改权限:
sudo chmod 777 /var/www/myApp(你的应用名)/static/迁移静态文件
sudo pip install pymysqlcd ~cd work/project/python manage.py collectstatic部署阿里云服务器所需文件下载链接
密码:a11n ps:点击输入密码下载即可