From 90294ca97590d0b0ad847b192ed05445fbdf2f77 Mon Sep 17 00:00:00 2001 From: 8ga Date: Mon, 13 Oct 2025 14:20:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20DockerCollection.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DockerCollection.md | 73 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/DockerCollection.md b/DockerCollection.md index 2562fbe..2c755cb 100644 --- a/DockerCollection.md +++ b/DockerCollection.md @@ -14,6 +14,8 @@ docker run \ ## 基于毫秒镜像源构建 Maven、OpenJDK21、git 的 Dockerfile +镜像命名为:mvn-java-21 + ```shell FROM docker.1ms.run/eclipse-temurin:21-jdk ENV TZ=Asia/Shanghai @@ -28,6 +30,8 @@ RUN sed -i s@http://archive.ubuntu.com/@http://mirrors.tuna.tsinghua.edu.cn/@g / ## 基于毫秒镜像源构建 Maven、OpenJDK8、git 的 Dockerfile +镜像命名为:mvn-java-8 + ```shell FROM docker.1ms.run/maven:3.8.6-jdk-8 ENV TZ=Asia/Shanghai @@ -43,6 +47,8 @@ RUN echo "deb https://mirrors.aliyun.com/debian/ bullseye main contrib non-free" ## 基于毫秒镜像源构建 node:16、git、nginx 的 Dockerfile +镜像命名为:node-16 + ```shell FROM docker.1ms.run/node:16-alpine # 阿里云镜像源 @@ -50,6 +56,73 @@ RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories RUN apk add --no-cache git nginx ``` +## 示例:构建一个 SpringBoot、Java21 的 Dockerfile + +``` +FROM docker.1ms.run/library/mvn-java-21:latest +ENV PROJECT_ACTIVE=根据实际情况激活 application-xxx.yaml 配置文件,比如:prod +WORKDIR /app +EXPOSE springboot 内嵌的 servlet 容器端口号 + +# 配置容器启动命令 +RUN << 'EOF' cat > /entrypoint.sh +#!/bin/bash +set -e +cd /app && rm -rf 源码目录 +git clone "http://用户名:密码@远程仓库地址.git" +cd /app/源码目录 && mvn clean package +exec java -jar target/jar包名称.jar --spring.profiles.active=$PROJECT_ACTIVE +EOF + +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/entrypoint.sh"] +``` + +## 示例:构建一个 SpringBoot、Java8 的 Dockerfile + +``` +FROM docker.1ms.run/library/mvn-java-8:latest +ENV PROJECT_ACTIVE=根据实际情况激活 application-xxx.yaml 配置文件,比如:prod +WORKDIR /app +EXPOSE springboot 内嵌的 servlet 容器端口号 + +# 配置容器启动命令 +RUN << 'EOF' cat > /entrypoint.sh +#!/bin/bash +set -e +cd /app && rm -rf 源码目录 +git clone "http://用户名:密码@远程仓库地址.git" +cd /app/源码目录 && mvn clean package +exec java -jar target/jar包名称.jar --spring.profiles.active=$PROJECT_ACTIVE +EOF + +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/entrypoint.sh"] +``` + +## 示例:构建一个 Node16、Vue2 的 Dockerfile + +``` +FROM docker.1ms.run/library/node-16:latest +WORKDIR /web +EXPOSE Nginx的端口号 + +# 配置 nginx.conf +RUN << 'EOF' cat > /nginx.conf +在这里补全Nginx配置文件内容 +EOF + +# 配置容器启动命令 +RUN << 'EOF' cat > /entrypoint.sh +#!/bin/bash +set -e +继续补全。。。 +EOF + +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/entrypoint.sh"] +``` + ## 安装 Grafana ```shell