zoukankan      html  css  js  c++  java
  • 使用dockerfile,创建gitblit镜像

    1. 快速使用gitblit镜像

    1.1 push 镜像

    # docker pull 2859413527/gitblit

    1.2 查看下载的镜像

    # docker images | grep "gitblit"
    
    docker.io/2859413527/gitblit   latest              dfd272c9eb15        7 hours ago         607 MB
    
    #

    1.3 启动gitblit容器

    # docker run -d -P docker.io/2859413527/gitblit
    
    # docker ps
    
    CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                               NAMES
    
    b1bcdf33b897        docker.io/2859413527/gitblit   "/usr/bin/java -ja..."   3 seconds ago       Up 2 seconds        0.0.0.0:32771->9010/tcp, 0.0.0.0:32770->29418/tcp   naughty_engelbart
    
    #

    1.4 启动容器指定端口/挂在git数据文件

    如果需要将目录挂载出来,则需要调整selinux,这里为了测试先将selinux关闭

    # setenforce 0
    
    # docker run -d --restart=always --name gitblit-server -p 9010:9010 -p 29418:29418 -v /git:/git docker.io/2859413527/gitblit

    通过浏览器 ip:9010 进行访问

     

    2. 解析dockerfile文件

    2.1 Dockerhub github地址

    dockerhub地址: https://hub.docker.com/r/2859413527/gitblit

    github地址: https://github.com/LoongLiWang/dockerfile_by_gitblit

    2.2 解析dockerfile

    # 基于哪个镜像来创建的,这里是centos 
    FROM centos 
    
    # dockerfile的作者信息
    LABEL MAINTAINER 'liwang <2859413527@QQ.COM>'
    
    # 设置gitblit版本的环境变量
    ENV GITBLITVERSION 1.8.0
    
    # 从官网将其gitblit下载至容器的/目录下
    # 普及一下,ADD 和 COPY的区别
    # COPY: 仅仅是复制
    # ADD: 可以跟压缩文件,例如,tar/zip 等,ADD会自动解压,也可以跟链接,如下面所示,它会下载文件至镜像中,此外,ADD会导致构建缓存失效
    ADD http://dl.bintray.com/gitblit/releases/gitblit-${GITBLITVERSION}.tar.gz /gitblit-${GITBLITVERSION}.tar.gz
    
    # 将工作目录设置 / 
    WORKDIR /
    
    # 使用yum安装openjdk
    # RUN 模块后面可以跟命令
    RUN yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
    
    # 对下载的gitblit进行解压
    # 解压完毕后删除刚刚下载的压缩包
    # 修改gitblit配置文件的httpPort和repositoriesFolder
    RUN set -x 
            && tar xf gitblit-${GITBLITVERSION}.tar.gz 
            && rm -f gitblit-${GITBLITVERSION}.tar.gz 
            && cd gitblit-${GITBLITVERSION}/data 
            && mkdir /git 
            && sed -i 's/server.httpPort = 0/server.httpPort = 9010/g' defaults.properties 
            && sed -i 's#git.repositoriesFolder = ${baseFolder}/git#git.repositoriesFolder = /git#g' defaults.properties
    
    # 将工作目录设置为刚刚解压的gitblit目录中
    WORKDIR /gitblit-${GITBLITVERSION}
    
    # 开放 9010 和 29418 端口
    EXPOSE 9010
    EXPOSE 29418
    
    # 启动gitblit
    # CMD 后面同样跟命令,与RUN不同的是,CMD是容器启动的时候的命令
    CMD ["/usr/bin/java","-jar","gitblit.jar","--baseFolder","data"]

    自己是在造轮子么,哈哈哈

    欢迎转发! 请保留源地址: https://www.cnblogs.com/NoneID
  • 相关阅读:
    Android 开发 深入理解Handler、Looper、Messagequeue 转载
    Android 开发 Handler的基本使用
    Java 学习 注解
    Android 开发 AlarmManager 定时器
    Android 开发 框架系列 百度语音合成
    Android 开发 框架系列 Google的ORM框架 Room
    Android 开发 VectorDrawable 矢量图 (三)矢量图动画
    Android 开发 VectorDrawable 矢量图 (二)了解矢量图属性与绘制
    Android 开发 VectorDrawable 矢量图 (一)了解Android矢量图与获取矢量图
    Android 开发 知晓各种id信息 获取线程ID、activityID、内核ID
  • 原文地址:https://www.cnblogs.com/NoneID/p/10778286.html
Copyright © 2011-2022 走看看