jenins with docker-cli maven nodejs chinese lanugage support and TZ Asia/Shanghai adjustment
4.5K
fix the following error when use origin jenkins docker image on ubuntu 2204lts
+ docker inspect -f . node:7-alpine
/var/jenkins_home/workspace/test@tmp/durable-1e0eb9b6/script.sh: 1: docker: not found
+ docker inspect -f . node:7-alpine
docker: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by docker)
docker: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by docker)
create docker-compose.yml
version: '3.8'
services:
jenkins: blankhang/jenkins
container_name: jenkins
restart: always
privileged: true
user: root
healthcheck:
test: curl -s https://localhost:8080 >/dev/null; if [[ $$? == 52 ]]; then echo 0; else echo 1; fi
interval: 1m
timeout: 5s
retries: 3
ports:
- '8080:8080'
networks:
- default
volumes:
# you can change it [/docker/jenkins/jenkins_home] to your host location, it hosts the jenkins files.
- '/docker/jenkins/jenkins_home:/var/jenkins_home'
- '/etc/localtime:/etc/localtime:ro'
- '/var/run/docker.sock:/var/run/docker.sock'
networks:
default:
then start it
docker compose up -d
then open your browser http://yourserverip:8080
Dockerfile
FROM jenkins/jenkins:lts-jdk25
MAINTAINER [email protected]
USER root
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Asia/Shanghai
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
ENV NODEJS_VERSION=22
ENV GRADLE_VERSION=9.3.0
ENV GRADLE_USER_HOME=/.gradle
ENV GRADLE_HOME=/opt/gradle
#ENV ANDROID_HOME=/usr/lib/android-sdk/
# 安装基本工具 + 中文字体支持 + Docker CLI
RUN apt-get update && apt-get install -y --no-install-recommends \
sudo git wget unzip curl fontconfig locales tzdata gnupg lsb-release ca-certificates \
maven \
&& echo "jenkins ALL=NOPASSWD: ALL" >> /etc/sudoers \
&& echo "zh_CN.UTF-8 UTF-8" > /etc/locale.gen && locale-gen zh_CN.UTF-8 \
&& ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \
&& rm -rf /var/lib/apt/lists/*
# ✅ 使用 Docker 官方源安装最新 CLI
# 安装 Docker CLI(不安装 dockerd)
RUN groupadd -f docker \
&& mkdir -p /etc/apt/keyrings \
&& curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg \
&& echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian bullseye stable" \
> /etc/apt/sources.list.d/docker.list \
&& apt-get update && apt-get install -y docker-ce-cli \
&& usermod -a -G docker jenkins \
&& rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/*
# 安装 Node.js(使用 NodeSource) + Yarn + pnpm
RUN curl -fsSL https://deb.nodesource.com/setup_${NODEJS_VERSION}.x | bash - \
&& apt-get install -y nodejs \
&& npm install -g yarn pnpm \
&& rm -rf /var/lib/apt/lists/*
# 安装 Gradle
RUN curl -Lo /tmp/gradle.zip https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip \
&& unzip /tmp/gradle.zip -d /opt/ \
&& ln -s /opt/gradle-${GRADLE_VERSION}/bin/gradle /usr/bin/gradle \
&& rm -f /tmp/gradle.zip
# 创建并授权缓存目录
RUN mkdir -p ${GRADLE_USER_HOME}/caches /.android \
&& chown -R jenkins:jenkins ${GRADLE_USER_HOME} /.android
USER jenkins
# 可选:预安装 Jenkins 插件
RUN jenkins-plugin-cli --plugins \
git \
maven-plugin \
gradle \
nodejs \
ws-cleanup \
blueocean \
locale \
ssh-steps \
publish-over-ssh \
pipeline-stage-view \
pipeline-utility-steps \
pipeline-maven \
pipeline-maven-api \
pipeline-model-api \
pipeline-model-definition \
pipeline-model-extensions \
workflow-durable-task-step \
docker-plugin \
docker-workflow \
localization-zh-cn
Content type
Image
Digest
sha256:9c6c51a0c…
Size
843.4 MB
Last updated
15 days ago
docker pull blankhang/jenkins