aiprodcoder преди 3 месеца
родител
ревизия
4021e2c1ba
променени са 1 файла, в които са добавени 31 реда и са изтрити 30 реда
  1. 31 30
      Dockerfile

+ 31 - 30
Dockerfile

@@ -1,30 +1,31 @@
-# 使用alpine作为基础镜像
-FROM alpine:latest
-
-# 安装必要的工具(wget用于下载文件)
-RUN apk update && \
-    apk add --no-cache wget && \
-    # 清理缓存以减小镜像体积
-    rm -rf /var/cache/apk/*
-
-# 设置工作目录
-WORKDIR /app
-
-# 设置默认架构为amd64,允许通过--build-arg覆盖 =linux/arm64 为arm平台
-ARG TARGETPLATFORM=linux/amd64
-
-# 根据目标架构下载对应文件
-RUN case "${TARGETPLATFORM}" in \
-        "linux/amd64")  wget -O mixapi https://github.com/aiprodcoder/MIXAPI/releases/download/v1.1/mixapi-v1.1-linux-amd64 ;; \
-        "linux/arm64")  wget -O mixapi https://github.com/aiprodcoder/MIXAPI/releases/download/v1.1/mixapi-v1.1-linux-arm64 ;; \
-        *) echo "Unsupported architecture: ${TARGETPLATFORM}" && exit 1 ;; \
-    esac
-
-# 设置文件可执行权限
-RUN chmod +x mixapi
-
-# 暴露3000端口
-EXPOSE 3000
-
-# 启动命令
-CMD ["./mixapi"]
+# 使用alpine作为基础镜像
+FROM alpine:latest
+
+# 安装必要的工具(wget用于下载文件)
+RUN apk update && apk add --no-cache wget && rm -rf /var/cache/apk/*
+        
+#设置下载目录
+WORKDIR /app
+
+# 复用架构变量,自动匹配mixapi的x86_64/aarch64版本
+RUN arch="$(apk --print-arch)"; \
+    case "$arch" in \
+        'x86_64') \
+            wget -O mixapi https://github.com/aiprodcoder/MIXAPI/releases/download/v1.1/mixapi-v1.1-linux-amd64; \
+            ;; \
+        'aarch64') \
+            wget -O mixapi https://github.com/aiprodcoder/MIXAPI/releases/download/v1.1/mixapi-v1.1-linux-arm64; \
+            ;; \
+    esac
+
+# 设置文件可执行权限
+RUN chmod +x mixapi
+
+# 暴露3000端口
+EXPOSE 3000
+
+#设置工作目录
+WORKDIR /data
+
+# 启动命令
+CMD ["/app/mixapi"]