Created
March 29, 2023 13:19
-
-
Save barelyhuman/3cbbc2084aa5eaeb7a989287ec8c8540 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM ghcr.io/mmafrar/alpine-react-native-android:latest | |
# Install dependencies | |
RUN apk add --no-cache git curl bash build-base openssl openssh-client libffi-dev libxml2-dev libxslt-dev libgcrypt-dev libressl-dev readline-dev yaml-dev zlib-dev ncurses-dev gdbm-dev pcre-dev mariadb-dev sqlite-dev | |
# Install rbenv | |
# Install rbenv | |
RUN git clone https://github.com/rbenv/rbenv.git /root/.rbenv | |
RUN git clone https://github.com/rbenv/ruby-build.git /root/.rbenv/plugins/ruby-build | |
RUN /root/.rbenv/plugins/ruby-build/install.sh | |
ENV PATH /root/.rbenv/bin:$PATH | |
RUN echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh # or /etc/profile | |
RUN echo 'eval "$(rbenv init -)"' >> .bashrc | |
# SHELL ["/bin/bash", "-c"] | |
# Install Ruby | |
ARG RUBY_VERSION=3.2.1 | |
ENV RUBY_VERSION=$RUBY_VERSION | |
RUN /bin/bash -c 'rbenv install 3.0.3' \ | |
&& /bin/bash -c 'rbenv global 3.0.3' | |
# Set environment variables for Android SDK | |
ARG ANDROID_SDK_VERSION=4333796 | |
ENV ANDROID_SDK_VERSION=$ANDROID_SDK_VERSION | |
ENV ANDROID_SDK_URL="https://dl.google.com/android/repository/sdk-tools-linux-${ANDROID_SDK_VERSION}.zip" | |
ENV ANDROID_HOME="/root/android-sdk" | |
ENV ANDROID_SDK_ROOT="/root/android-sdk" | |
ENV ANDROID_SDK_LICENSES="/root/.android/licenses" | |
ENV PATH="$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH" | |
ARG ANDROID_BUILD_VERSION=29 | |
ENV ANDROID_BUILD_VERSION=$ANDROID_BUILD_VERSION | |
# Install Android SDK dependencies | |
RUN apk add --update --no-cache openjdk8-jre | |
# Install Android SDK | |
RUN mkdir -p ${ANDROID_HOME} && \ | |
curl -sL "${ANDROID_SDK_URL}" -o android-sdk.zip && \ | |
unzip android-sdk.zip -d ${ANDROID_HOME} && \ | |
rm android-sdk.zip | |
# Accept all Android SDK licenses | |
RUN yes | ${ANDROID_HOME}/tools/bin/sdkmanager --licenses | |
ARG ANDROID_BUILD_VERSION_FALLBACK=28 | |
ENV ANDROID_BUILD_VERSION_FALLBACK=$ANDROID_BUILD_VERSION_FALLBACK | |
ARG ANDROID_TOOLS_VERSION=29.0.0 | |
ENV ANDROID_TOOLS_VERSION=$ANDROID_TOOLS_VERSION | |
ARG ANDROID_TOOLS_VERSION_FALLBACK=28.0.0 | |
ENV ANDROID_TOOLS_VERSION_FALLBACK=$ANDROID_TOOLS_VERSION_FALLBACK | |
ARG CMAKE_VERSION=3.22.1 | |
ENV CMAKE_VERSION=$CMAKE_VERSION | |
ARG OLD_CMAKE_VERSION=3.18.1 | |
ENV OLD_CMAKE_VERSION=$OLD_CMAKE_VERSION | |
# Install platform tools | |
RUN yes | ${ANDROID_HOME}/tools/bin/sdkmanager "platform-tools" \ | |
"emulator" \ | |
"platforms;android-$ANDROID_BUILD_VERSION" \ | |
"platforms;android-$ANDROID_BUILD_VERSION_FALLBACK" \ | |
"build-tools;$ANDROID_TOOLS_VERSION" \ | |
"build-tools;$ANDROID_TOOLS_VERSION_FALLBACK" \ | |
"cmake;$CMAKE_VERSION" \ | |
"cmake;$OLD_CMAKE_VERSION" \ | |
"system-images;android-21;google_apis;armeabi-v7a" | |
# Install fastlane | |
RUN apk add --update --no-cache ruby ruby-dev ruby-bundler && \ | |
gem install fastlane | |
WORKDIR /app | |
CMD ["bash"] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment