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文件到项目
    

      

      

  • 相关阅读:
    InPut 标签 HTML(表单)
    JavaScript Table 对象
    JCBD
    JCBD
    JavaScript prototype 属性
    Java8 新特性
    JavaScript 对象的使用
    Java 反射
    虚拟机VirtualBox启动虚拟机报Only Ethernet Adapter' (VERR_INTNET_FLT_IF_NOT_FOUND).
    Impala 数值函数
  • 原文地址:https://www.cnblogs.com/q767498226/p/11384994.html
Copyright © 2011-2022 走看看