sterepando commited on
Commit
095de42
·
verified ·
1 Parent(s): e099203

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +60 -0
Dockerfile ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.10-slim
2
+
3
+ # Устанавливаем JDK (нужен для запуска инструментов Android SDK)
4
+ RUN apt-get update && \
5
+ apt-get install -y --no-install-recommends \
6
+ curl \
7
+ unzip \
8
+ default-jdk-headless \
9
+ && rm -rf /var/lib/apt/lists/*
10
+
11
+ WORKDIR /tool
12
+
13
+ # -----------------------------------------------------------------------------
14
+ # 1. Установка Android Command Line Tools
15
+ # -----------------------------------------------------------------------------
16
+ ENV ANDROID_SDK_ROOT=/opt/android-sdk
17
+ # Ссылка на инструменты командной строки
18
+ ENV CMDLINE_TOOLS_URL=https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip
19
+
20
+ RUN mkdir -p ${ANDROID_SDK_ROOT}/cmdline-tools && \
21
+ curl -o tools.zip ${CMDLINE_TOOLS_URL} && \
22
+ unzip -q tools.zip && \
23
+ # Android SDK требует специфическую структуру папок: cmdline-tools/latest/bin
24
+ mv cmdline-tools ${ANDROID_SDK_ROOT}/cmdline-tools/latest && \
25
+ rm tools.zip
26
+
27
+ ENV PATH=${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin:${PATH}
28
+
29
+ # Принимаем лицензии и устанавливаем build-tools (там лежит d8)
30
+ RUN yes | sdkmanager --licenses >/dev/null && \
31
+ sdkmanager "build-tools;34.0.0"
32
+
33
+ # -----------------------------------------------------------------------------
34
+ # 2. Скачивание и конвертация
35
+ # -----------------------------------------------------------------------------
36
+ WORKDIR /app
37
+
38
+ # Скачиваем JAR файл с Maven
39
+ RUN curl -L -o luajava-4.0.2.jar https://repo1.maven.org/maven2/party/iroiro/luajava/luajava/4.0.2/luajava-4.0.2.jar
40
+
41
+ # Конвертируем JAR в DEX с помощью d8
42
+ # --output . создаст файл classes.dex в текущей папке
43
+ RUN ${ANDROID_SDK_ROOT}/build-tools/34.0.0/d8 --output . luajava-4.0.2.jar && \
44
+ mv classes.dex luajava.dex
45
+
46
+ # -----------------------------------------------------------------------------
47
+ # 3. Выдача результата
48
+ # -----------------------------------------------------------------------------
49
+ RUN echo '<html><head><title>LuaJava DEX Converter</title></head><body>' > index.html && \
50
+ echo '<h1>Conversion Result</h1>' >> index.html && \
51
+ echo '<p>Original JAR: <a href="luajava-4.0.2.jar">luajava-4.0.2.jar</a></p>' >> index.html && \
52
+ echo '<p><b>Android DEX: <a href="luajava.dex" download>Download luajava.dex</a></b></p>' >> index.html && \
53
+ echo '<hr><pre>' >> index.html && \
54
+ echo 'MD5 Checksums:' >> index.html && \
55
+ md5sum * >> index.html && \
56
+ echo '</pre></body></html>' >> index.html
57
+
58
+ EXPOSE 7860
59
+
60
+ CMD ["python3", "-m", "http.server", "7860"]