镜像构建历史
# 2025-06-15 01:23:11 0.00B 设置默认要执行的命令
CMD ["gitblit"]
# 2025-06-15 01:23:11 0.00B 声明容器运行时监听的端口
EXPOSE map[29418/tcp:{} 8080/tcp:{} 8443/tcp:{} 9418/tcp:{}]
# 2025-06-15 01:23:11 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
# 2025-06-15 01:23:11 5.09KB 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
# 2025-06-15 01:23:11 0.00B 创建挂载点用于持久化数据或共享数据
VOLUME [/var/opt/gitblit]
# 2025-06-15 01:23:11 0.00B 设置工作目录为/opt/gitblit
WORKDIR /opt/gitblit
# 2025-06-15 01:23:11 0.00B 设置环境变量 PATH
ENV PATH=/opt/gitblit:/usr/local/openjdk-8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2025-06-15 01:23:11 0.00B 设置环境变量 GITBLIT_RPC
ENV GITBLIT_RPC=on
# 2025-06-15 01:23:11 0.00B 定义构建参数
ARG GITBLIT_RPC
# 2025-06-15 01:23:11 65.86KB 复制新文件或目录到容器中
COPY migrate/non-etc-files migrate/defaults.* /usr/local/share/gitblit/ # buildkit
# 2025-06-15 01:23:11 3.63KB 复制新文件或目录到容器中
COPY migrate/migrate-data /usr/local/bin/ # buildkit
# 2025-06-15 01:23:11 452.04KB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux ; mkdir -p -m 0775 $GITBLIT_VAR ; gbetc=$GITBLIT_VAR/etc ; gbsrv=$GITBLIT_VAR/srv ; mkdir -p -m 0775 $gbsrv ; mv /opt/gitblit/data/git $gbsrv ; ln -s $gbsrv/git /opt/gitblit/data/git ; mv /opt/gitblit/data $gbetc ; ln -s $gbetc /opt/gitblit/data ; mkdir -p /opt/gitblit/etc/ ; mv $gbetc/defaults.properties /opt/gitblit/etc ; printf "6 c\\\n\\\n\\\n""#\\\n""# DO NOT EDIT THIS FILE. IT CAN BE OVERWRITTEN BY UPDATES.\\\n""# FOR YOUR OWN CUSTOM SETTINGS USE THE FILE ${gbetc}/gitblit.properties\\\n""# THIS FILE IS ONLY FOR REFERENCE.\\\n""#\\\n\\\n\\\n\n/^# Base folder for repositories/,/^git.repositoriesFolder/d\n/^# The location to save the filestore blobs/,/^filestore.storageFolder/d\n/^# Specify the location of the Lucene Ticket index/,/^tickets.indexFolder/d\n/^# The destination folder for cached federation proposals/,/^federation.proposalsFolder/d\n/^# The temporary folder to decompress/,/^server.tempFolder/d\ns/^server.httpPort.*/#server.httpPort = 8080/\ns/^server.httpsPort.*/#server.httpsPort = 8443/\ns/^server.redirectToHttpsPort.*/#server.redirectToHttpsPort = true/\n " > /tmp/defaults.sed ; sed -f /tmp/defaults.sed /opt/gitblit/etc/defaults.properties > $gbetc/defaults.properties ; rm -f /tmp/defaults.sed ; grep "^git.repositoriesFolder" $gbetc/defaults.properties && false ; grep "^filestore.storageFolder" $gbetc/defaults.properties && false ; grep "^tickets.indexFolder" $gbetc/defaults.properties && false ; grep "^federation.proposalsFolder" $gbetc/defaults.properties && false ; grep "^server.tempFolder" $gbetc/defaults.properties && false ; echo "container.dockerfileVersion = 1.2.1" > /opt/gitblit/etc/system.properties ; echo "container.dockerfileType = ubuntu" >> /opt/gitblit/etc/system.properties ; echo "container.imageType = release" >> /opt/gitblit/etc/system.properties ; echo "git.repositoriesFolder = ${gbsrv}/git" >> /opt/gitblit/etc/system.properties ; echo "filestore.storageFolder = ${gbsrv}/lfs" >> /opt/gitblit/etc/system.properties ; echo "tickets.indexFolder = ${gbsrv}/tickets/lucene" >> /opt/gitblit/etc/system.properties ; echo "federation.proposalsFolder = ${gbsrv}/fedproposals" >> /opt/gitblit/etc/system.properties ; echo "server.tempFolder = ${GITBLIT_VAR}/temp/gitblit" >> /opt/gitblit/etc/system.properties ; echo "server.httpPort = 8080" >> /opt/gitblit/etc/system.properties ; echo "server.httpsPort = 8443" >> /opt/gitblit/etc/system.properties ; echo "server.redirectToHttpsPort = true" >> /opt/gitblit/etc/system.properties ; printf '''#\n''# GITBLIT-DOCKER.PROPERTIES\n''#\n''# This file is used by the docker image to store settings that are defined\n''# via environment variables. The settings in this file are automatically changed,\n''# added or deleted.\n''#\n''# Do not define your custom settings in this file. Your overrides or\n''# custom settings should be defined in the "gitblit.properties" file.\n''#\n''# Do NOT change this include line. It makes sure that settings for this docker image are set.\n''#\ninclude = /opt/gitblit/etc/defaults.properties,/opt/gitblit/etc/system.properties\n\n' > $gbetc/gitblit-docker.properties ; sed -i -e 's/^\(web.enableRpcServlet.*\)/#\1/' -e 's/^\(web.enableRpcManagement.*\)/#\1/' -e 's/^\(web.enableRpcAdministration.*\)/#\1/' $gbetc/defaults.properties ; printf '''#\n''# GITBLIT.PROPERTIES\n''#\n''# Define your custom settings in this file and/or include settings defined in\n''# other properties files.\n''#\n\n''# NOTE: Gitblit will not automatically reload "included" properties. Gitblit\n''# only watches the "gitblit.properties" file for modifications.\n''#\n''# Paths may be relative to the ${baseFolder} or they may be absolute.\n''#\n''# ONLY append your custom settings files at the END of the "include" line.\n''# The present files define the default settings for the docker container. If you\n''# remove them or change the order, things may break.\n''#\ninclude = gitblit-docker.properties\n\n''#\n''# Define your overrides or custom settings below\n''#\n\n' > $gbetc/gitblit.properties ; chown -R gitblit:gitblit $GITBLIT_VAR ; chmod ug+rwxs $gbsrv $gbsrv/git ; chmod ug+rwxs $gbetc $gbetc/certs ; chmod go=r $gbetc/defaults.properties ; chmod 0664 $gbetc/gitblit-docker.properties ; chmod 0664 $gbetc/gitblit.properties ; cp -a $gbetc /opt/gitblit/vog-etc ; cp -a $gbsrv/git/project.mkd /opt/gitblit/srv-project.mkd ; # buildkit
# 2025-06-15 01:23:11 0.00B 设置环境变量 GITBLIT_VAR
ENV GITBLIT_VAR=/var/opt/gitblit
# 2025-06-15 01:23:11 0.00B 添加元数据标签
LABEL maintainer=James Moger <james.moger@gitblit.com>, Florian Zschocke <f.zschocke+gitblit@gmail.com> org.label-schema.schema-version=1.0 org.label-schema.name=gitblit org.label-schema.description=Gitblit is an open-source, pure Java stack for managing, viewing, and serving Git repositories. org.label-schema.url=http://gitblit.com org.label-schema.version=1.10.0 org.opencontainers.image.title=gitblit org.opencontainers.image.description=Gitblit is an open-source, pure Java stack for managing, viewing, and serving Git repositories. org.opencontainers.image.url=http://gitblit.com org.opencontainers.image.source=https://github.com/gitblit-org/gitblit-docker org.opencontainers.image.documentation=https://github.com/gitblit-org/gitblit-docker/blob/master/hub-readme.md org.opencontainers.image.version=1.10.0
# 2025-06-15 01:23:11 64.53MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux ; apt-get update && apt-get install -y --no-install-recommends wget gosu ; rm -rf /var/lib/apt/lists/* ; wget --progress=bar:force:noscroll -O gitblit.tar.gz ${GITBLIT_DOWNLOAD_URL} ; echo "${GITBLIT_DOWNLOAD_SHA} *gitblit.tar.gz" | sha256sum -c - ; mkdir -p /opt/gitblit ; tar xzf gitblit.tar.gz -C /opt/gitblit --strip-components 1 ; rm -f gitblit.tar.gz ; rm -f /opt/gitblit/install-service-*.sh ; rm -r /opt/gitblit/service-*.sh ; echo "export LS_OPTIONS='--color=auto'" >> /root/.bashrc ; echo 'eval `dircolors -b`' >> /root/.bashrc ; echo "alias ls='"'ls $LS_OPTIONS'"'" >> /root/.bashrc ; echo "alias ll='"'ls $LS_OPTIONS -l'"'" >> /root/.bashrc ; # buildkit
# 2025-06-15 01:23:11 0.00B 设置环境变量 GITBLIT_DOWNLOAD_URL
ENV GITBLIT_DOWNLOAD_URL=https://github.com/gitblit-org/gitblit/releases/download/v1.10.0/gitblit-1.10.0.tar.gz
# 2025-06-15 01:23:11 0.00B 设置环境变量 GITBLIT_DOWNLOAD_SHA
ENV GITBLIT_DOWNLOAD_SHA=584d8ab046d52b7575ed928497de81beb3abd6d44f689075dac6fe2580561bbd
# 2025-06-15 01:23:11 0.00B 设置环境变量 GITBLIT_VERSION
ENV GITBLIT_VERSION=1.10.0
# 2025-06-15 01:23:07 2.63MB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd -r -g 8117 gitblit && useradd -r -M -g gitblit -u 8117 -d /opt/gitblit gitblit # buildkit
# 2022-08-02 13:55:57 109.17MB
/bin/sh -c set -eux; arch="$(dpkg --print-architecture)"; case "$arch" in 'amd64') downloadUrl='https://github.com/AdoptOpenJDK/openjdk8-upstream-binaries/releases/download/jdk8u342-b07/OpenJDK8U-jre_x64_linux_8u342b07.tar.gz'; ;; 'arm64') downloadUrl='https://github.com/AdoptOpenJDK/openjdk8-upstream-binaries/releases/download/jdk8u342-b07/OpenJDK8U-jre_aarch64_linux_8u342b07.tar.gz'; ;; *) echo >&2 "error: unsupported architecture: '$arch'"; exit 1 ;; esac; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends dirmngr gnupg wget ; rm -rf /var/lib/apt/lists/*; wget --progress=dot:giga -O openjdk.tgz "$downloadUrl"; wget --progress=dot:giga -O openjdk.tgz.asc "$downloadUrl.sign"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys EAC843EBD3EFDB98CC772FADA5CD6035332FA671; gpg --batch --keyserver keyserver.ubuntu.com --keyserver-options no-self-sigs-only --recv-keys CA5F11C6CE22644D42C6AC4492EF8D39DC13168F; gpg --batch --list-sigs --keyid-format 0xLONG CA5F11C6CE22644D42C6AC4492EF8D39DC13168F | tee /dev/stderr | grep '0xA5CD6035332FA671' | grep 'Andrew Haley'; gpg --batch --verify openjdk.tgz.asc openjdk.tgz; gpgconf --kill all; rm -rf "$GNUPGHOME"; mkdir -p "$JAVA_HOME"; tar --extract --file openjdk.tgz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm openjdk.tgz*; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; { echo '#!/usr/bin/env bash'; echo 'set -Eeuo pipefail'; echo 'trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$JAVA_HOME/lib/security/cacerts"'; } > /etc/ca-certificates/update.d/docker-openjdk; chmod +x /etc/ca-certificates/update.d/docker-openjdk; /etc/ca-certificates/update.d/docker-openjdk; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -version
# 2022-08-02 13:54:51 0.00B
/bin/sh -c #(nop) ENV JAVA_VERSION=8u342
# 2022-08-02 13:54:51 0.00B
/bin/sh -c #(nop) ENV LANG=C.UTF-8
# 2022-08-02 13:54:51 0.00B
/bin/sh -c #(nop) ENV PATH=/usr/local/openjdk-8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2022-08-02 13:54:51 27.00B
/bin/sh -c { echo '#/bin/sh'; echo 'echo "$JAVA_HOME"'; } > /usr/local/bin/docker-java-home && chmod +x /usr/local/bin/docker-java-home && [ "$JAVA_HOME" = "$(docker-java-home)" ] # backwards compatibility
# 2022-08-02 13:54:50 0.00B
/bin/sh -c #(nop) ENV JAVA_HOME=/usr/local/openjdk-8
# 2022-08-02 13:48:05 4.88MB
/bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates p11-kit ; rm -rf /var/lib/apt/lists/*
# 2022-08-02 09:20:05 0.00B
/bin/sh -c #(nop) CMD ["bash"]
# 2022-08-02 09:20:04 80.39MB
/bin/sh -c #(nop) ADD file:0eae0dca665c7044bf242cb1fc92cb8ea744f5af2dd376a558c90bc47349aefe in /
镜像信息
{
"Id": "sha256:34924ec524538de5eac016eda3dc5979208f68f22a4236ffb2fb8c787c0d20ef",
"RepoTags": [
"gitblit/gitblit:1.10.0",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gitblit/gitblit:1.10.0"
],
"RepoDigests": [
"gitblit/gitblit@sha256:58b0174236eba699d201e1dd248b238b1f55d94f0fc56b1b80922f3b2da46c1e",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gitblit/gitblit@sha256:58b0174236eba699d201e1dd248b238b1f55d94f0fc56b1b80922f3b2da46c1e"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2025-06-14T17:23:11.956131502Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"29418/tcp": {},
"8080/tcp": {},
"8443/tcp": {},
"9418/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/opt/gitblit:/usr/local/openjdk-8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"JAVA_HOME=/usr/local/openjdk-8",
"LANG=C.UTF-8",
"JAVA_VERSION=8u342",
"GITBLIT_VERSION=1.10.0",
"GITBLIT_DOWNLOAD_SHA=584d8ab046d52b7575ed928497de81beb3abd6d44f689075dac6fe2580561bbd",
"GITBLIT_DOWNLOAD_URL=https://github.com/gitblit-org/gitblit/releases/download/v1.10.0/gitblit-1.10.0.tar.gz",
"GITBLIT_VAR=/var/opt/gitblit",
"GITBLIT_RPC=on"
],
"Cmd": [
"gitblit"
],
"ArgsEscaped": true,
"Image": "",
"Volumes": {
"/var/opt/gitblit": {}
},
"WorkingDir": "/opt/gitblit",
"Entrypoint": [
"docker-entrypoint.sh"
],
"OnBuild": null,
"Labels": {
"maintainer": "James Moger \u003cjames.moger@gitblit.com\u003e, Florian Zschocke \u003cf.zschocke+gitblit@gmail.com\u003e",
"org.label-schema.build-date": "2025-06-14T17:22:57",
"org.label-schema.description": "Gitblit is an open-source, pure Java stack for managing, viewing, and serving Git repositories.",
"org.label-schema.name": "gitblit",
"org.label-schema.schema-version": "1.0",
"org.label-schema.url": "http://gitblit.com",
"org.label-schema.vcs-ref": "8b900717cf9bd82339b968117788274c01cbc861",
"org.label-schema.version": "1.10.0",
"org.opencontainers.image.created": "2025-06-14T17:22:57",
"org.opencontainers.image.description": "Gitblit is an open-source, pure Java stack for managing, viewing, and serving Git repositories.",
"org.opencontainers.image.documentation": "https://github.com/gitblit-org/gitblit-docker/blob/master/hub-readme.md",
"org.opencontainers.image.revision": "8b900717cf9bd82339b968117788274c01cbc861",
"org.opencontainers.image.source": "https://github.com/gitblit-org/gitblit-docker",
"org.opencontainers.image.title": "gitblit",
"org.opencontainers.image.url": "http://gitblit.com",
"org.opencontainers.image.version": "1.10.0"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 262128344,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/06f49fb7cb65e401b592c7748d7ff3663c40645384d43f01247ed7071da714fb/diff:/var/lib/docker/overlay2/2592b0ab1613a5d2c7160cadd2b891b74ed594ebe0b054bb65d1d22dd4697351/diff:/var/lib/docker/overlay2/c115eb9940842e54040e3c7665c0c4ac0f27b934272e4e616d42ea73f7c89f56/diff:/var/lib/docker/overlay2/cb1b95a9cb75de71eeceffa49bca13d9d82d772238433144fdc6cdd4f8f3ecfe/diff:/var/lib/docker/overlay2/c65787e37b64c0fed66480cde158e05ad4f4b8e769a322e2121a0918dea80038/diff:/var/lib/docker/overlay2/7f1a4bcddb9ada072b234aee39ca23926420e7d435c9d7c6b703d316499acff3/diff:/var/lib/docker/overlay2/6cb6f3a585f00e32962e592befaa3d24c03e7e956cf5e177f27f1b23d1a971a0/diff:/var/lib/docker/overlay2/3786a2ca729b89b75ea6f049d9be4f292bdfcc752e210152d03c622ad2489983/diff:/var/lib/docker/overlay2/9c71e9255f93b8db166af620ce1c6555d75ed5cbe12cfe711321c244665ba88a/diff:/var/lib/docker/overlay2/7ea06a880f35006476b5fe87975006641ae6094e7a3dae782a694ea632aba0f0/diff",
"MergedDir": "/var/lib/docker/overlay2/c6f444cc497e9c60c6a5ae6f725c52fb376bcaadce7791ca2d3cccc54df33c26/merged",
"UpperDir": "/var/lib/docker/overlay2/c6f444cc497e9c60c6a5ae6f725c52fb376bcaadce7791ca2d3cccc54df33c26/diff",
"WorkDir": "/var/lib/docker/overlay2/c6f444cc497e9c60c6a5ae6f725c52fb376bcaadce7791ca2d3cccc54df33c26/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:92a4e8a3140f7a04a0e5a15793adef2d0e8889ed306a8f95a6cfb67cecb5f212",
"sha256:eafe6e032dbd1979848a323c4c84071be765d175661d6ea2ac148dbd673c6713",
"sha256:cd5a0a9f1e018d0861ca738588413c2906a36f5b5ae87906e8718961e44c3a7f",
"sha256:b66078cf4b4146848eb677f38d6fa83559b6c92d010d5cff63759bedd87e318e",
"sha256:f173cb69c3725687613797071488aca65843d9f9911977bfa8e37a949d87de92",
"sha256:0bd99109333108d90d1b7e35e06e0eedc9155e8e60e33ecb06e600e7b547a823",
"sha256:8812356e1adae343962b0db06d12052146889a6df7b93c3c952522621856eb58",
"sha256:75837e5606ed959444710cbb6677a2d5114f883899ccbda6820af3825d7419d0",
"sha256:9739537bad538a9eb67962f97857e1aea3b04c3f1a4905761c3628ee970f22f7",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
"sha256:b7ffb006c26058a8c761b9ac3a44396d165c77369c0514378e1fcbf45408e74b"
]
},
"Metadata": {
"LastTagTime": "2025-10-10T17:10:45.378810265+08:00"
}
}