ECS服务器Django部署备忘录

141 阅读2分钟
原文链接: yq.aliyun.com
# Python3 installation wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz tar -xzvf Python-3.6.8.tgz cd Python-3.6.8 mkdir /usr/local/python3 ./configure --prefix=/usr/local/python3 make make install mv /usr/bin/python /usr/bin/python_old2 ln -s /usr/local/python3/bin/python3 /usr/bin/python
# MySQL installation wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm yum localinstall mysql80-community-release-el7-1.noarch.rpm yum repolist enabled | grep "mysql.*-community.*" yum -y install mysql-community-server mysql-community-devel ## startup systemctl enable mysqld systemctl daemon-reload service mysqld start ## password grep 'temporary password' /var/log/mysqld.log mysql -uroot -p set password = 'Pass1234!';
# Trouble shooting ### zipimport.ZipImportError: can’t decompress data, yum -y install zlib* vim Module/Setup  zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz <- remove '# make && make install ### yum error vim /usr/bin/yum vim /usr/libexec/urlgrabber-ext-down #!/usr/bin/python  -> #!/usr/bin/python2.7  ## Project X Y & Z X:8081 /var/www/html/X Y:8082 /var/www/html/Y Z:8083 /var/www/html/Z
# Django services vim /usr/lib/systemd/system/X.service: [Unit]  Description=gitlabcontroller [Service]  PrivateTmp=true Restart=always  Type=simple  ### Path and Port ExecStart=/usr/bin/python /var/www/html/#X#Y#Z#/manage.py runserver 0.0.0.0:#8081#8082#8083 ExecStop=/usr/bin/kill -15 $MAINPID  [Install]  WantedBy=multi-user.target
# Nginx installation ### Preparation cd /etc/yum.repos.d/ vim nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1 ### Installation: yum install -y nginx ### Version: nginx -v ### Grammer check nginx -t
# Nginx Configuration Assume address is helloworld.com vim /etc/nginx/nginx.conf
user  nginx; worker_processes  4;  ### check number of CPU core error_log  /var/log/nginx/error.log warn; pid        /var/run/nginx.pid; events {     worker_connections  1024; ### max connnection } http {     include       /etc/nginx/mime.types;     default_type  application/octet-stream;     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '                       '$status $body_bytes_sent "$http_referer" '                       '"$http_user_agent" "$http_x_forwarded_for"';     access_log  /var/log/nginx/access.log  main;     sendfile        on;     keepalive_timeout  65;     upstream X{         server 127.0.0.1:8081;     }     upstream Y{         server 127.0.0.1:8082;     }     upstream Z{         server 127.0.0.1:8083;     }     ### Reverse Proxy to X.helloworld.com     server {         listen       443;         ssl on;         ssl_certificate /etc/pki/tls/CERTIFICATE.crt;         ssl_certificate_key /etc/pki/PRIVATEKEY.key;         server_name  X.helloworld.com;         charset     utf-8;         client_max_body_size 75M;         location / {             proxy_pass http://X;             index  index.html index.htm;           }     }     ### Reverse Proxy to Y.helloworld.com     server {         listen       443;         ssl on;         ssl_certificate /etc/pki/tls/CERTIFICATE.crt;         ssl_certificate_key /etc/pki/PRIVATEKEY.key;         server_name  Y.helloworld.com;         charset     utf-8;         client_max_body_size 75M;         location / {             proxy_pass http://X;             index  index.html index.htm;           }     }     ### Reverse Proxy to Z.helloworld.com     server {         listen       443;         ssl on;         ssl_certificate /etc/pki/tls/CERTIFICATE.crt;         ssl_certificate_key /etc/pki/PRIVATEKEY.key;         server_name  Z.helloworld.com;         charset     utf-8;         client_max_body_size 75M;          location / {             proxy_pass http://Z;             index  index.html index.htm;           }     }        include /etc/nginx/conf.d/*.conf; }
# Command when operation systemctl status nginx systemctl enable nginx systemctl start nginx systemctl stop nginx systemctl restart nginx