1. 快速使用gitblit镜像

1.1 push 镜像

# docker pull /gitblit

1.2 查看下载的镜像

# docker images | grep "gitblit"

docker.io//gitblit   latest              dfd272c9eb15         hours ago          MB

#

1.3 启动gitblit容器

# docker run -d -P docker.io//gitblit

# docker ps

CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                               NAMES

b1bcdf33b897        docker.io//gitblit    seconds ago       Up  seconds        ->/tcp, ->/tcp   naughty_engelbart

#

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

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

# setenforce 

# docker run -d --restart=always --name gitblit-server -p : -p : -v /git:/git docker.io//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"]

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

使用dockerfile,创建gitblit镜像的更多相关文章

  1. 基于Dockerfile创建docker镜像

    0.先创建一个文件夹img mkdir img 1.Linux上新建3个文件 2.文件内容分别写入 (1)Dockerfile中 # 基于的基础镜像centos FROM centos # 维护该镜像 ...

  2. Docker 学习笔记 (一)Dockerfile 创建本地镜像

    一.测试环境 OS version: CentOS Linux release 7.5.1804 (Core) docker cluster : master 1 + data node 4 dock ...

  3. Docker dockerfile创建Eclipse镜像初试

    抽空初步阅读了Docker技术入门与实战 [Kindle电子书] http://www.cnblogs.com/2018/p/4600116.html 现在想首先在开发环境下引入统一的环境,由于开发中 ...

  4. Dockerfile创建自有镜像

    文件名必须名为Dockerfile,用touch命令新建Dockerfile文件(执行touch Dockerfile),Dockerfile内容: from ubuntu --基础镜像名字 main ...

  5. docker Dockerfile 创建镜像

    Docker 组件 1. docker client : docker的客户端 2. docker server : docker daemon的主要组成部分,接受用户通过docker client发 ...

  6. docker常用命令、镜像命令、容器命令、数据卷,使用dockerFile创建镜像,dockefile的语法规则。

    一.docker常用命令? 1. 常用帮助命令 1.1 docker的信息以及版本号 /* docker info 查看docker的信息 images2 docker本身就是一个镜像. docker ...

  7. docker创建nginx镜像

    注意:此处不是用的dockerfile创建的镜像,只是用来搞一搞 首先你的系统里面要安装docker,这里就不重复介绍了,可以看之前的文章: 然后再搞一个基础镜像 docker pull regist ...

  8. 利用脚本快速执行Dockerfile以及docker镜像的启停与删除

    `关于脚本:` 'sh setup.sh build' # 将Dockerfile创建成镜像 'sh setup.sh run' # 启动build创建好的镜像,放到后台运行 'sh setup.sh ...

  9. 如何用Dockerfile创建镜像

    本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p/5181222.html 创建镜像的目的 首先说DockerHub或其它一些镜像仓库已经提供了够多的镜像,有 ...

随机推荐

  1. xftp无法用root账号登录问题

    编辑vim /etc/ssh/sshd_config文件 把PermitRootLogin Prohibit-password 添加#注释掉 新添加:PermitRootLogin yes 更改Per ...

  2. python学习Day10 函数的介绍(定义、组成、使用)

    今日学习内容: 1.什么是函数 :函数就是一个含有特定功能的变量,一个解决某问题的工具 函数的定义:通过关键字def + 功能名字():代码体(根据需求撰写代码逻辑) 2.为什么要用函数:可以复用:函 ...

  3. OO电梯调度

    告别了三次奇妙无比的求导作业之后,我们就开始搭建一部自己的电梯了.相信我们不同同学的电梯运行方式肯定各具特色吧,但值得肯定的是,在艰苦的走完了三次电梯逐步改进的作业之后,我们的电梯在正常情况下应该是可 ...

  4. android 组件隐藏

    参考 https://blog.csdn.net/bbtianshi/article/details/79556609 view.setVisibility(View.GONE);

  5. 记第一次XSS实战

    前两天偶然挖到一个XSS,在我低谷期的时候给了我些动力,遂写下这篇博客记录 随手在一个搜索框中测试,发现有反应 观察一下标签,需要">把前面的闭合,然后<a 把后面的标签闭合 结 ...

  6. 转载:让Windows Server 2012r2 IIS8 ASP.NET 支持10万并发请求

    由于之前使用的是默认配置,服务器最多只能处理5000个同时请求,今天下午由于某种情况造成同时请求超过5000,从而出现了上面的错误. 为了避免这样的错误,我们根据相关文档调整了设置,让服务器从设置上支 ...

  7. 20175126《Java程序设计》第五周学习总结

    # 20175126 2016-2017-2 <Java程序设计>第五周学习总结 ## 教材学习内容总结 - 本周学习方式主要为手动敲代码并理解内容学习. - 学习内容为教材第六章,本章内 ...

  8. 《AlwaysRun!》第一次作业:团队亮相

    项目 内容 这个作业属于哪个课程 2016级软件工程(西北师范大学) 这个作业的要求在哪里 实验五  团队作业1:软件研发团队组建 团队名称 Always Run! 作业学习目标 熟悉软件的开发流程与 ...

  9. PHP整理--PHP面向对象

    一.定义类 使用关键字class定义 二.实例化对象  使用关键字new实例化对象 三.类成员的添加和访问 (1)类成员:属性.方法.常量 (2)添加成员需要使用修饰符  public.protect ...

  10. SQL 2008发布与订阅

    网的教程很多,大都是不能成功,只有这一篇是成功的! https://www.cnblogs.com/DBArtist/p/5803271.html