使用Jenkins构建Docker镜像

13次阅读

共计 1977 个字符,预计需要花费 5 分钟才能阅读完成。

准备

1. 安装 Centos7 虚拟机
2. 安装 JDK
3. 安装 Git
4. 安装 Maven
5. 安装 Docker

(1) 使用 yum 命令进行安装:    
   yum install -y docker     -y 表示不询问 使用默认配置进行安装
(2) 查看是否安装成功
   yum list installed | grep docker
(3) 启动 docker
   systemctl start docker
(4) 查看是否启动成功
   systemctl status docker
(5) 修改 docker 国内镜像源
   vi /etc/docker/daemon.json
修改为下面这样
   {"registry-mirrors": ["http://hub-mirror.c.163.com"]
 
    }
(6) 重启 docker
   systemctl restart docker
(7) 设置 docker 远程访问
   vi /lib/systemd/system/docker.service
   添加下面这行
   ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

安装 / 配置 Jenkins

  • 下载 Jenkins
    Jenkins 安装有 3 种方式,下载 jenkins.war 放在 Tomcat 的 webapp 目录下运行、docker 安装 Jenkins、yum 在线安装。
  • 使用 jenkins.war 安装
    (1)下载 jenkins.war、Tomcat 通过 xshell 上传到虚拟机 definesys 目录
    (2)把 jenkins.war 复制到 tomcat 的 webapp 目录下
    (3)java -jar jenkins.war 启动 Jenkins
    (4)cat /var/lib/jenkins/secrets/initialAdminPassword 查看初始登录密码
    (5)登录进去后会一直卡住不动,在 $JENKINS_HOME/hudson.model.UpdateCenter.xml 文件 中,默认内容如下

    <?xml version='1.0' encoding='UTF-8'?>
     <sites>
       <site>
        <id>default</id>
        <url>http://updates.jenkins-ci.org/update-center.json</url>
       </site>
    </sites

    这个地址在外国的服务器,因为墙的原因,下载初始化界面所需插件不了,就一直处于等待状态
    把 url 改为 http://mirror.xmission.com/je…
    (6)登录进去后创建一个用户
    (7)提示安装的插件安一安

  • 配置 Jenkins
    点击系统管理 -》系统设置
    maven 配置

    Gitee 配置

    Docker 配置 ,其中 docker host url 就是虚拟机的 IP,端口就是安装 docker 时配置 docker 远程访问的端口。

    点击系统管理 -》全局工具配置
    JDK 配置

    Git 配置

    Maven 配置

使用

  • 创建一个项目
    创建一个 springboot 项目
    在项目根目录下创建 dockerfile

    FROM java:8
    VOLUME /tmp
    ADD target/docker_demo-0.0.1-SNAPSHOT.jar /app.jar
    ENV TZ Asia/Shanghai
    RUN bash -c 'touch /app.jar'
    EXPOSE 8888
    ENTRYPOINT ["java","-Xmx400m","-Xms200m","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

    把代码提交到码云上

  • 新建任务
    在 Jenkins 上新建任务。
    创建一个自由风格的软件项目。
  • 配置 Jenkins 任务


    源码管理选择 git


    Repository URL:是刚才新建 springboot 项目提交的 git 地址
    Credentials:点击添加 -》jenkins


    用户名、密码是登录码云的账号密码。ID 自己命名一个。描述随便写一个。点击添加。


    触发器根据自己需求定义


    maven 版本:选择系统配置中的 maven
    目标:maven 打包命令
    增加构建操作:Bulid/Publish Dcoker image
    Cloud: 选择系统管理中添加的 docker
    Image: 镜像名称
    添加构建步骤:执行 shell

    docker login -u docker 远程仓库账号 -p docker 远程仓库密码
    #给镜像重新打标签,直接原镜像无法上传到远程镜像仓库
    docker tag docker_demo liqianliu/docker_demo:latest
    docker push liqianliu/docker_demo
    #拉取远程镜像仓库镜像
    docker pull liqianliu/docker_demo
    #运行
    docker run -d --name=docker-demo liqianliu/docker_demo
  • 构建

正文完
 0