通过docker部署jenkins

通过docker部署jenkins

月光魔力鸭

2023-05-25 11:47 阅读 394 喜欢 0

最近先研究下jenkins远程部署,在自己服务器上跑一个先,简单记录下碰到的问题。

docker 安装jenkins

官网下载:https://www.jenkins.io/download/ docker安装文档:https://github.com/jenkinsci/docker/blob/master/README.md

最后我是使用docker-compose来进行部署的。

docker compose

version : "3.7"

services:
  jenkins:
    image: jenkins/jenkins:lts-jdk11
    container_name: jenkins
    restart: always
    user: root
    ports:
      - "8374:8080"
    volumes:
      - ./home:/var/jenkins_home
    environment:
      - URL=http://xxx.com
    networks:
      - jenkins_web
networks:
  jenkins_web:
    driver: bridge

要注意的是 user ,如果不添加jenkins用户的话,是会报错的Permission问题。这里指定root用户就可以了。 或者使用该方案解决。https://developer.aliyun.com/article/53990

启动jenkins

docker compose up -d

反向代理

由于服务器是本地的,我的端口跟宿主机的端口并不一致,所以nginx的配置也需要注意。

server {
  listen 80;
  server_name xxx.com;

  location / {
    proxy_pass http://localhost:8374;
    proxy_redirect     default;
    proxy_http_version 1.1;
    proxy_set_header X-Forwarded-Host $host:8888;

    # Required for Jenkins websocket agents

    proxy_set_header   Host              $host:8888;
    proxy_set_header   X-Real-IP         $remote_addr;
    proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
    proxy_set_header   X-Forwarded-Proto $scheme;
    proxy_max_temp_file_size 0;

    #this is the maximum upload size
    client_max_body_size       10m;
    client_body_buffer_size    128k;

    proxy_connect_timeout      90;
    proxy_send_timeout         90;
    proxy_read_timeout         90;
    proxy_buffering            off;
    proxy_request_buffering    off; # Required for HTTP CLI commands
    proxy_set_header Connection ""; # Clear for keepalive
  } 
}

此处可以参考: https://www.jenkins.io/doc/book/system-administration/reverse-proxy-configuration-nginx/ https://www.jenkins.io/doc/book/system-administration/reverse-proxy-configuration-troubleshooting/

关于jenkins中文的问题

进入jenkins设置

找到locale插件并安装

插件安装完后重启下,然后继续安装中文

选择中文

这一步感觉有点慢啊.. 好久了都没安装成功,安装完成后选择语言设置。

然后保存即可。

更换jenkins plugins 源站,这样安装插件会快一些

var /var/lib/jenkins/updates/ 下的default.json ,更换为清华的jenkins插件地址。https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

通过jenkin 远程服务器进行部署更新

安装publish over ssh 插件

安装完成后无在这里配置对应的参数。 一般通过密钥连接,可以指定密钥文件

源码通过github拉下来后,若有需要编译则进行编译,编译后可将文件在“构建后操作”中上传到服务器,并进行重启命令。

转载请注明出处: https://chrunlee.cn/article/docker-with-jenkins.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
ubuntu 配置nginx反向代理,这里简单记录下,后续再复习..
反爬有很多手段,字体反爬就是其中之一。之前一直都是听过,但是却没怎么在实际爬虫中遇到过,最近在一个爬虫题目网站上看到了,试了试,发现还挺麻烦,当然自己从头研究字体肯定麻烦,简单的是模块多的是,选几个就过了。
简单记录下碰到的一个问题,通过jenkins 远程部署springboot+ vue 项目碰到的问题。
通过frp做穿透实现https 访问本地http项目。
上一章,我们学习和了解了websocket 是什么以及初始搭建,接下来,我们继续了解,如何进行广播以及对应的私聊呢。
前一阵子做了个图床,可以粘贴上传,查看服务器上的文件... 但是自己的服务器总是有问题..空间还小,就怕哪天没钱续费了。同事昨天想要一个七牛的图床,在网上找了下,只找到了 qiniu upload files插件,自己使用了下,挺好用,但是没有复制粘贴
ffmpeg 采集摄像头进行推流,然后播放,实现直播。
最近有系统需要知道性能瓶颈,尝试使用jmeter对重要接口进行并发测试,确定能否支撑一定的用户数量。