File size: 1,851 Bytes
a5a50b3
ee68370
68ab1df
a5a50b3
bb35bd4
 
 
 
 
 
 
 
 
 
df61d89
bb35bd4
5086182
 
bb35bd4
 
9631a80
bb35bd4
9631a80
a5a50b3
 
 
 
 
 
 
9631a80
a5a50b3
9631a80
bb35bd4
18d94e3
 
 
 
 
9631a80
 
a5a50b3
 
 
 
 
9631a80
a5a50b3
 
9631a80
a5a50b3
9631a80
a5a50b3
bb35bd4
9631a80
5d9d87c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# 使用するベースイメージを指定
FROM openjdk:11-jdk-slim

# 必要なツールをインストール
RUN apt-get update && apt-get install -y \
    wget \
    unzip \
    git \
    && rm -rf /var/lib/apt/lists/*

# Android SDKのインストール
ENV ANDROID_SDK_ROOT /sdk
RUN mkdir -p /sdk && \
    wget -q "https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip" -O cmdline-tools.zip && \
    unzip cmdline-tools.zip -d /sdk/cmdline-tools && \
    rm cmdline-tools.zip && \
    yes | /sdk/cmdline-tools/cmdline-tools/bin/sdkmanager --licenses && \
    /sdk/cmdline-tools/cmdline-tools/bin/sdkmanager \
    "platform-tools" \
    "platforms;android-33" \
    "build-tools;33.0.2"

# Gradleの設定
ENV GRADLE_VERSION 7.6
RUN wget -q https://services.gradle.org/distributions/gradle-$GRADLE_VERSION-all.zip -P /tmp && \
    unzip /tmp/gradle-$GRADLE_VERSION-all.zip -d /opt && \
    rm /tmp/gradle-$GRADLE_VERSION-all.zip && \
    ln -s /opt/gradle-$GRADLE_VERSION /opt/gradle && \
    ln -s /opt/gradle/bin/gradle /usr/bin/gradle

# プロジェクトのクローンとセットアップ
RUN git clone https://github.com/martykan/webTube.git /app/webTube
WORKDIR /app/webTube

# Gradleキャッシュディレクトリの設定と権限
ENV GRADLE_USER_HOME=/app/webTube/.gradle
RUN mkdir -p /app/webTube/.gradle/wrapper/dists && \
    chmod -R 777 /app/webTube/.gradle

# Gradleの互換性設定
RUN sed -i 's/gradle-4.4.1/gradle-7.6/g' gradle/wrapper/gradle-wrapper.properties

# local.properties の設定
RUN echo "sdk.dir=/sdk" > /app/webTube/local.properties

# Gradle Wrapperの設定
RUN ./gradlew wrapper --gradle-version 7.6

# ビルド実行
RUN ./gradlew build --info --warning-mode all || true

# ポートの設定
EXPOSE 8080

# コンテナ起動時のコマンド
CMD ["./gradlew", "run"]