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"]
|