服务器操作系统:ubuntu 18.04
Nginx
安装Nginx
sudo apt-get update
sudo apt-get install nginx
查看Nginx状态
sudo systemctl status nginx
启动Nginx服务
sudo systemctl start nginx
重启Nginx服务
sudo systemctl restart nginx
配置Nginx日志格式
vim /etc/nginx/nginx.conf
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
' $status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" '
'$bytes_sent $request_length $request_time $upstream_response_time';
PHP
安装PHP7.3
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install -y php7.3
安装PHP扩展
sudo apt-get install php7.3-bcmath php7.3-bz2 php7.3-cgi php7.3-curl php7.3-dev php7.3-fpm php7.3-gd php7.3-json php7.3-mbstring php7.3-mysql php7.3-opcache php7.3-soap php-redis php7.3-xml php7.3-zip php7.3-mongo
安装PHP包管理工具
sudo apt-get install composer
配置PHP-FPM
sudo vim /etc/php/7.3/fpm/pool.d/www.conf
PHP错误日志
php_admin_value[error_log] = /var/log/fpm-php.www.log
php_admin_flag[log_errors] = on
配置PHP-FPM子进程
pm = static
pm.max_children = 80
PHP慢日志
slowlog = /var/log/$pool.log.slow
request_slowlog_timeout = 5
重启PHP-FPM
kill -USR2 `cat /run/php/php7.3-fpm.pid`
SFS挂载
mkdir -p /data/sfs
apt-get install nfs-common
mount -t nfs -o vers=3,timeo=600,noresvport,nolock 10.250.50.193:/share_idata_pro /data/sfs
管理后台项目
python环境安装
apt install python3-pip python3-dev build-essential libssl-dev libffi-dev python3-setuptools
pip3 install pymysql
pip3 install python-dotenv
pip3 install sshtunnel
pip3 install redis
pip3 install apscheduler
定时任务
*/15 * * * * /usr/bin/php7.3 /data/backend/project/artisan schedule:run >> /tmp/idata.log
nohup /usr/bin/python3 /data/backend/project/task/task_app/jobs.py > /tmp/template.log 2>&1 &
接口服务
cd /data/backend/project/api_app
python3.6 -m venv apienv
source apienv/bin/activate
pip install wheel
pip install flask gunicorn
pip install gevent redis python-dotenv
supervisor
安装supervisor
pip install supervisor
mkdir -p /etc/supervisor
mkdir -m 755 -p /etc/supervisor/
echo_supervisord_conf > /etc/supervisord.conf
编辑配置文件,最后两行
vim /etc/supervisord.conf
[include]
files = /etc/supervisor/*.conf
创建日志目录
mkdir -p /var/log/gunicorn
chown -R www-data:www-data /var/log/gunicorn/
创建项目配置文件
vim /etc/supervisor/project.conf
[program:template]
directory = /data/backend/idata/template_app
command = /data/backend/idata/template_app/templateenv/bin/gunicorn --workers 33 --worker-class gevent --bind unix:template.sock -m 007 app:server
user = www-data
autostart = true
autorestart = true
startretries = 3
redirect_stderr = true
stdout_logfile_maxbytes = 200MB
stdout_logfile_backups = 10
stdout_logfile = /var/log/gunicorn/template.log
workers 数为cpu核心数 X 2 + 1
user 启动用户
redirect_stderr stderr 重定向到 stdout
stdout_logfile_maxbytes 日志文件大小
stdout_logfile_backups 日志文件备份数
stdout_logfile 日志文件
管理supervisord
supervisord -c /etc/supervisord.conf
supervisorctl -c /etc/supervisord.conf status
supervisorctl -c /etc/supervisord.conf reload
项目管理
supervisorctl -c /etc/supervisord.conf stop project
supervisorctl -c /etc/supervisord.conf start project
supervisorctl -c /etc/supervisord.conf restart project
mysql:默认安装后的密码
1.
进入目录:cd /etc/mysql,查看debian.cnf文件
2.使用上debian.cnf的账号密码登录MySQL。
3.use mysql;
4.使用一下语句设置账号密码:update user set authentication_string=PASSWORD("自定义新密码") where user='root';
5.执行一下语句:update user set plugin="mysql_native_password";
6.刷新:flush privileges;