在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
本文介绍了Docker+Jenkins自动构建部署,分享给大家,具体如下: 环境
运行jenkins 运行jenkins容器 在主机上创建目录,并添加读写权限以便jenkins应用运行时读写文件,如: $ mkdir -p /var/jenkins_node $ chmod 777 /var/jenkins_node 拉取jenkins镜像: docker run -d --name myjenkins -p 8080:8080 -p 50000:50000 -v <your_jenkins_path>:/var/jenkins_home jenkins 将之前的目录挂载为数据卷。 设置账户及SSH登陆 在Getting Started界面会需要初始的密码Unlock Jenkins。 docker logs myjenkins # 或者进入容器 docker exec -t myjenkins /bin/bash 有了密码,输入后安装建议的插件。 安装Publish Over SSH插件 首页 -> 点击系统管理 -> 管理插件 ->可选插件 -> 过滤:ssh -> 选择Publish Over SSH插件,点击直接安装。 设置服务器SSH信息 首先在容器中生成rsa密钥: # 从宿主机客户进入容器,目前容器名myjenkins,也可通过docker ps 查看 $ docker exec -it myjenkins /bin/bash # 进入容器后建立.ssh目录,创建密钥文件私钥id_rsa,公钥id_rsa.pub ~ mkdir ~/.ssh && cd ~/.ssh ~ ssh-keygen -t rsa # 一直回车即可 添加公钥到宿主机 ssh-copy-id -i ~/.ssh/id_rsa.pub <username>@<host> 需要修改目标服务器的ssh配置文件,配置文件为/etc/ssh/sshd_config。设置ssh-server允许使用私钥和公钥对的方式登录,然后使用 添加私钥
高级选项能够配置ssh服务器端口和超时。Test可测试,显示 项目配置 首先,新建一个任务。填写项目名称。
构建环境:选择
# 根据你的项目需要编写 sudo docker stop <node> || true \ && sudo docker rm <node> || true \ && cd /var/jenkins_node/workspace/<node> \ && sudo docker build --rm --no-cache=true -t <node> - < Dockerfile \ && sudo docker run -d --name <node> -p 3000:3000 -v /var/jenkins_node/workspace/node:/home/project <node> 端口设置的3000,也可以另行设置 Dockerfile # 根据你的项目需要编写 FROM node RUN mkdir -p /var/www/html/ RUN npm install -g yarn WORKDIR /var/www/html EXPOSE 3000 CMD ["npm","start"] ps: 返回首页,选择项目,立即构建。成功后可以通过 配置webhook 配置webhook,实现自动部署
添加令牌:返回首页 -> 项目 -> 配置 -> 构建触发器 -> 选择 "触发远程构建" ->粘贴"API Token"内容到"身份验证令牌" 设置jenkins安全策略 首页 -> 系统管理 -> Configure Global Security ->
至此,完成自动化的构建和部署。当你推送代码后就会实现自动构建,部署。 部署错误查找 代码推送和webhook的问题不大,照着例子写不会出错。
到此这篇关于使用Docker+Jenkins自动构建部署的文章就介绍到这了,更多相关Docker Jenkins自动构建部署内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界! |
请发表评论