服務器操作系統: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;