ubuntu 下docker运行jenkins 并nginx做反向代理

1.下载jenkins的镜像

1)下载

2)查看版本:#docker inspect jenkins

3)创建挂载目录并配置权限:

查看docker容器内的用户ID

 docker run -it --rm --entrypoint="/bin/bash" jenkins/jenkins:lts -c "whoami && id"

# mkdir /srv/jenkins_home

chown -R 1000  /srv/jenkins_home

2.启动容器
docker run -d --name jenkins -p 7071:8080  --restart=always  -e TZ="Asia/Shanghai" -u root -e JENKINS_OPTS="--prefix=/jenkins" -e JENKINS_ARGS="--prefix=/jenkins" -v /srv/jenkins_home:/var/jenkins_home  -v /etc/timezone:/etc/timezone jenkins/jenkins:lts

参数解析:
-d           后台运行容器,并返回容器ID;
--name       为容器名字
-p           映射宿主机端口到容器端口,宿主机端口:容器端口
--restart=always  机器重启时自动启动容器
-e       设定一些必须的环境变量。
                  -e TZ="Asia/Shanghai" 设定时区为上海, 否则会差8小时。
      -e JENKINS_OPTS="--prefix=/jenkins" -e JENKINS_ARGS="--prefix=/jenkins" 
 设定jenkins访问的路径, 如果是直接根目录或ip地址访问,则不需要添加,如果是想nginx反向代理且不在根目录下,
-v   /srv/jenkins_home:/var/jenkins_home 挂载宿主机文件到容器。
-v   /etc/timezone:/etc/timezone 挂载宿主机时间

3.优化插件安装速度

   1)在挂载目录/srv/jenkins_home/updates/default.json

替换 default.json 中的内容
将 updates.jenkins-ci.org/download 替换为 mirrors.tuna.tsinghua.edu.cn/jenkins,
将 www.google.com 替换为 www.baidu.com ,执行如下命令

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

重启一下 Jenkins

4.nginx反向代理

location /jenkins {
        proxy_pass http://127.0.0.1:7071;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For  $remote_addr;
        proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
        }

5.访问地址:http://www.yourhost.com/jenkins

你可能感兴趣的:(服务器配置)