文档章节

jenkins+docker+nodejs项目的自动部署环境

西园里的猫
 西园里的猫
发布于 2018/10/16 13:52
字数 587
阅读 51
收藏 8

1、服务器安装docker

yum install docker

2、jenkins安装

//创建jenkins工作目录
mkdir -p /var/www/jenkins/

//拉取docker jenkins镜像
docker pull jenkins 

//设置目前权限(必须)
chown -R 1000:1000 /var/www/jenkins

//docker 运行jenkins
docker run -itd -p 49001:8080 -p 50000:50000 --name jenkins --privileged=true  -v /var/www/jenkins:/var/jenkins_home jenkins

/**
1.这句命令的意思是:在后台运行一个基于jenkins:latest镜像的容器, 容器的名字叫做 jenkins_node ,把容器的8080端口映射为49002端口,并且把服务器上的/var/jenkins_node目录挂在到docker容器上的/var/jenkins_home目录

2.-d 后台运行docker容器
如果不加-d则,容器运行会占用此终端,如果终端关闭,则容器也相应关闭,jenkins就无法访问了。加上-d,容器会在后台运行。

3.--name 为容器起个别名
如果不起别名,则系统会默认分配一个随机别名,类似gklasd_sdfwe。起了别名后,后续会通过该别名管理该docker容器,也就是管理jenkins。

4.-p docker容器端口映射
jenkins服务是运行在docker里的,docker默认不对外暴露端口的

5.-v 文件挂载
如果不挂载,则jenkins所有log、用户配置文件都会在docker容器内,如果容器销毁,则jenkins得重新配置一遍。挂载出来方便jenkins迁移以及管理**/


//密码使用命名查看
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

3、浏览器访问http://localhost:49001 ,会出现如下界面:

打开initialAdminPassword文件,复制文件内容 initialAdminPassword文件位置为/var/www/jenkins/secrets/initialAdminPassword

或执行docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword查看

4、Plugins extend Jenkins 安装

5、设置admin user

6、jenkins配置(部署node项目)

    6.1首页,点击系统管理 --> 管理插件

    

    6.2选择可选插件,搜索安装Publish Over SSH

    6.3.点击系统管理--系统设置(拉到最下面),设置Publish Over SSH

    6.4新建任务

6.5项目配置

构建环境如果没有Node选项,前往系统管理--Global Tool Configuration设置

6.6点击立即构建,完成

参考:https://blog.csdn.net/swebin/article/details/70167944

© 著作权归作者所有

共有 人打赏支持
西园里的猫
粉丝 1
博文 74
码字总数 9348
作品 0
深圳
程序员
私信 提问
C# 发布控制台应用程序 App.config自动替换

在做项目的过程中,一般都有好几套环境,如Dev环境,QA环境等,通常情况下,不同环境的某些配置文件值是不一样的,部署时手动修改的方式管理多套环境的配置文件是很累的,而且很容易出错,最...

一直在路上
2018/10/16
0
0
从0开始搭建自动部署环境(续)

从0开始搭建自动部署环境(续) 前言 上一篇从0开始搭建自动部署环境虽然环境搭建起来了,但是配置少了一部分步骤。本来应该写到上一篇中,但是这样做篇幅过长了。另外,此篇会使用自动部署一...

五毛程序员
2017/11/27
0
0
Piplin 1.0 发布,免费、开源的持续集成与部署系统

Piplin(灵感来自于"pipeline",读作/ˈpɪpˌlɪn/ 或 /ˈpaɪpˌlaɪn/)是一款免费、开源的持续集成与部署系统,适用于软件的自动化构建、测试和部署相关的各种应用场景。 实现的主要功能:...

hifone
2017/12/11
1K
3
持续集成系统 - Piplin

Piplin 是一款免费、开源的持续集成系统,适用于软件的自动化构建、测试和部署相关的各种应用场景。 实现的功能主要有: 支持PHP、Python、JAVA、Ruby等项目的构建、测试与发布 可与Gitlab、...

hifone
2017/11/29
1K
0
关于jenkins自动部署多个分支的问题

大家好:问一个关于jenkins自动部署的问题 我有一个maven项目,使用的是assemble插件打包,打成的是类似tomcat的目录结构的zip(有bin,conf,lib等目录), 其中bin目录里面有启动,停止脚步...

西夏一品堂
2016/08/08
6.9K
3

没有更多内容

加载失败,请刷新页面

加载更多

node调用dll

先安装python2.7 安装node-gyp cnpm install node-gyp -g 新建一个Electron-vue项目(案例用Electron-vue) vue init simulatedgreg/electron-vue my-project 安装electron-rebuild cnpm ins......

Chason-洪
27分钟前
1
0
eclipse中项目svn转gitLab全过程

在工作中,我们可能会遇到项目从svn迁移到gitLab;此过程我们需要变化版本管理工具,上传代码。本篇博客记录了使用spring tool suit(sts/eclipse)进行项目迁移的全过程。 步骤: (1)端口之...

em_aaron
今天
2
0
scala学习(一)

学习Spark之前需要学习Scala。 参考学习的书籍:快学Scala

柠檬果过
今天
1
0
通俗易懂解释网络工程中的技术,如STP,HSRP等

导读 在面试时,比如被问到HSRP的主备切换时间时多久,STP几个状态的停留时间,自己知道有这些东西,但在工作中不会经常用到,就老是记不住,觉得可能还是自己基础不够牢固,知识掌握不够全面...

问题终结者
昨天
4
0
看了一下Maven的内容

了解了Maven其实是一个跨IDE的标准构建工具,能推广的原因估计是借了仓库的便利。 另一个作用是可以通过Maven的功能在社区版的IDEA去创建Web项目,下次实践看看

max佩恩
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部