• 1. 容器化部署一套云服务 第一讲 Jenkins(Docker + Jenkins + Yii2 + 云服务器))


    容器化部署一套云服务系列

    一、购买服务器

    服务器
    caeef003da4fc505499634292d351089.png

    二、登录云服务器


    b5d19cf73b803087af3929409cd9eaae.png

    三、安装jenkins

    sudo apt-get install openjdk-8-jdk
    wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | sudo apt-key add -
    echo deb http://pkg.jenkins.io/debian-stable binary/ | sudo tee /etc/apt/sources.list.d/jenkins.list
    sudo apt-get update
    sudo apt-get install jenkins
    查看密码
    sudo cat /var/lib/jenkins/secrets/initialAdminPassword
                    b575fc179df742e89b41da9571e5f45e
    sudo visudo
            jenkins ALL=(ALL) NOPASSWD: ALL
    sudo systemctl start jenkins
    sudo systemctl status jenkins
    sudo systemctl restart jenkins
    

    四、登录jenkins

    94.191.81.xxx:8080
    3b34f858ef1f5d9a58c030e3cc8a22e6.png

    4c2f7175cc3d124c8e24f3cf9d563787.png
    b7943133a8da4ce2ebfd8d9efc0efa1b.png

    b7943133a8da4ce2ebfd8d9efc0efa1b.png

    五、创建任务

    六、配置参数

    1.配置选项参数

    dev或production,后面执行shell命令的时候可以用到

    配置branch参数,后面执行shell命令的时候可以用到

    配置shell命令

    七、部署

    点击Build with Parameter ,配置用于构建项目的参数

    八、部署成功

    九、遇到的问题

    问题1. 访问94.191.81.xxx:8080 页面一直停留在SetupWizard

    • 解决方案:重启Jenkins服务
      sudo systemctl restart jenkins

      构建失败
      2eabfa17fb3fd4e2d8d740bd031e1e53.png
    • 原因:之前创建的任务 选择的是构建一个多配置项目,应该选择第一个“构建一个自由风格的软件项目”

      解决方案:删除jenkins的workspace,重新创建一个任务:构建一个自由风格的软件项目

    问题2.git pull 需要帐户名密码

    ssh-keygen -t rsa -C jackson0585@163.com
    cat ~/.ssh/id_rsa.pub
    
    git config --global user.name "jackson0714"
    git config --global user.email "jackson0585@163.com"
    git config --global credential.helper store
    
    git pull
    输入用户名和密码后,第二次不会再提示输入

    问题4.jenkins账户没有权限

    ubuntu@VM-0-17-ubuntu:/home/workspace/testProject$ sudo su jenkins
    jenkins@VM-0-17-ubuntu:/home/workspace/testProject$ git pull
    Username for 'https://github.com': ^C
    jenkins@VM-0-17-ubuntu:/home/workspace/testProject$ 

    解决方案:生成jenkins key

    jenkins@VM-0-17-ubuntu:~$ ssh-keygen -t rsa -C jackson0585@163.com

    问题5.Jenkins 找不到cnpm命令

    Your branch is up-to-date with 'origin/develop'.
    + cd /home/workspace/flycloud/flycloud/backend/
    + cd /home/workspace/flycloud/flycloud/frontend/
    + sudo cnpm install
    sudo: cnpm: command not found
    Build step 'Execute shell' marked build as failure
    Finished: FAILURE

    切换到jenkins用户,执行cnpm提示找不到命令

    sudo su jenkins
    npm install cnpm -g --registry=https://registry.npm.taobao.org
    报
    The program 'npm' is currently not installed. To run 'npm' please ask your administrator to install the package 'npm'

    解决方案:安装npm

    sudo apt-get install npm

    提示node版本低,升级node版本

    安装方法:
    1.产看node版本,没安装的请先安装;
    $ node -v
    2.清楚node缓存;
    $ sudo npm cache clean -f
    3.安装node版本管理工具'n';
    $ sudo npm install n -g
    4.使用版本管理工具安装指定node或者升级到最新node版本;
    $ sudo n stable (安装node最新版本)
    或安装指定版本
    $ sudo n (可以安装node指定版本 sudo n 10.10.0)
    5.使用node -v查看node版本,如果版本号改变为你想要的则升级成功。
    ![](images/screenshot_1536845880219.png)
    版本号没变,还需配置node环境变量
    1.查看通过n安装的node的位置;
    $ which node (如:/usr/local/n/versions/node/6.12.3)
    2.cd进入/usr/local/n/versions/node/ 你应该能看到你刚通过n安装的node版本这里如:10.10.0;编辑/etc/profile;
    $ vim /etc/profile
    3.将node安装的路径(这里为:/usr/local/n/versions/node/10.10.0)添加到文件末尾;
    
    #set node path
    export NODE_HOME=/usr/local/n/versions/node/10.10.0
    export PATH=$NODE_HOME/bin:$PATH
    
    ![](images/screenshot_1536845781670.png)
    4.wq退出保存文件,编译/etc/profile;
    
    $ source /etc/profile
    
    5.再次使用node -v查看node版本,不出意外版本号应该变为你想要的。
    ![](images/screenshot_1536846156322.png)

    问题6../start.sh 没有权限

    ./start.sh
    bash: ./start.sh: Permission denied
    解决方案:给该目录添加权限
    chmod 777 -R *
    

     


    作  者: Jackson0714
    出  处:http://www.cnblogs.com/jackson0714/
    关于作者:专注于微软平台的项目开发。如有问题或建议,请多多赐教!
    版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
    特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信
    声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是作者坚持原创和持续写作的最大动力!

  • 相关阅读:
    Redis学习笔记--Redis数据过期策略详解
    网络带宽和速度测试windows和linux用iperf工具
    如何将rabbitmq集群中的某个节点移除.
    关于linux系统密码策略的设置
    linux 系统ssh超时设置
    linux安全 设置登录失败次数后,拒绝登录
    tomcat隐藏版本号
    第 16 章 模板与泛型编程
    第 15 章 面向对象程序设计
    第 14 章 重载运算与类型转换
  • 原文地址:https://www.cnblogs.com/jackson0714/p/deploy1.html
Copyright © 2020-2023  润新知