zoukankan      html  css  js  c++  java
  • Jenkins自动化部署项目

    一. Jenkins自动化部署django项目

      1. 用到的技术栈

        Jenkins + supervisor + nginx + django + gunicorn

      2. gunicorn的使用

    - 使用gunicorn启动django项目
        gunicorn -w 3 -b 0.0.0.0:8001 projectdir.wsgi:application
    

      

      3. supervisor的使用 

    - 启动supervisor服务端
        python /usr/local/bin/supervisord    # 使用默认配置启动
        python /usr/local/bin/supervisird -c ./xxx.conf    # 使用定制配置启动 
    
    - supervisor项目的配置
    
    [program:projectname]
    command=/usr/local/bin/gunicorn -w 3 -b 0.0.0.0:7000 projectdir.wsgi:application
    directory=/home/projectdir/
    autostart=true
    autorestart=true
    
    - supervisor的几个常用指令
        supervisorctl start    # 开启配置项目
        supervisorctl restart/reload    # 重启
        supervisorctl update    # 启动新项目,重启修改的项目
    

      4. nginx的配置

    - 普通的配置
        server {
                listen   80;
                server_name  192.168.1.95;	# nginx对外地址
    
                location / {
                    proxy_pass http://0.0.0.0:8001;	# 代理地址
                }
    
                location /static/ {
                     alias /opt/yl/apps/static/;	# 静态文件
                }
            }
    
    - vue的配置
            server {
                    listen       8003;
                    server_name  192.168.1.95;
                    location / {
                        root /opt/vue_project/dist;
                        index index.html;
                    }
                }
    

      

      

      5. Jenkins的简单使用

    - Jenkins配置
        Repository URL(github/gitee远程仓库地址)
        Credentials(账号密码)
        构建触发器(gitee插件, gitee webhook)
        构建shell(重启supervisor + nginx)
        构建后(发送邮件等)
    
    - 构建时部署django项目的shell
        sudo supervisorctl update
        sudo /etc/init.d/nginx reload
    
    - 构建时部署vue项目的shell
      sudo npm install          # 下载工作区的npm包
      sudo rm -rf ./dist/*       # 删除之前的, 重新进行打包
      sudo npm run build        # 进行打包
      sudo rm -rf /www/web/site/*  # 删除服务器上之前存放dist文件
      sudo cp -rf ./dist/* /www/web/site  # 拷贝新的dist文件到项目
    

      

      

  • 相关阅读:
    Js图片利用定时器自动切换(setInterval)
    JS全选,全不选,添加,删除功能的实现
    windows 下安装memcache拓展
    Linux 踢出其他用户
    通过nginx配置php环境变量
    Mac 服务重启
    Mac PHP安装redis扩展
    高并发解决方案
    MySQL 分表
    MySQL 主从-简介
  • 原文地址:https://www.cnblogs.com/q767498226/p/11384994.html
Copyright © 2011-2022 走看看