Я создал докер-контейнер, чтобы запускать на нем свои задачи.
Я загружаю sdk внутри него, но когда я запускаю задачу извне, она говорит, что папка sdk не может быть найдена, потому что она получает путь, который я указал в файле local.properties проекта. Который указывает на папку моей машины SDK. Как я могу указать папку sdk внутри образа докера? Спасибо.
Файл сборки образа Docker:
FROM openjdk:8
ENV SDK_URL="https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip" \
ANDROID_HOME="/usr/local/android-sdk" \
ANDROID_NDK_HOME="/usr/local/android-sdk/ndk-bundle" \
ANDROID_VERSION=26 \
ANDROID_BUILD_TOOLS_VERSION=26.0.2
# Download Android SDK
RUN mkdir "$ANDROID_HOME" .android \
&& cd "$ANDROID_HOME" \
&& curl -o sdk.zip $SDK_URL \
&& unzip sdk.zip \
&& rm sdk.zip \
&& yes | $ANDROID_HOME/tools/bin/sdkmanager --licenses
# add to PATH
ENV PATH ${PATH}:${ANDROID_HOME}
ENV ANDROID_NDK_HOME /usr/local/android-ndk
ENV ANDROID_NDK_VERSION r19
ENV NDK_URL="https://dl.google.com/android/repository/android-ndk-${ANDROID_NDK_VERSION}-linux-x86_64.zip"
# Download Android NDK
RUN mkdir "$ANDROID_NDK_HOME" \
&& cd "$ANDROID_NDK_HOME" \
&& curl -o ndk.zip $NDK_URL \
&& unzip ndk.zip \
&& rm ndk.zip
# add to PATH
ENV PATH ${PATH}:${ANDROID_NDK_HOME}
# Install Android Build Tool and Libraries
RUN $ANDROID_HOME/tools/bin/sdkmanager --update
RUN $ANDROID_HOME/tools/bin/sdkmanager "build-tools;${ANDROID_BUILD_TOOLS_VERSION}" \
"platforms;android-${ANDROID_VERSION}" \
"platform-tools"
RUN mkdir /application
WORKDIR /application
Вот как я запускаю задачу:
docker run -it --rm -v "$PWD":/application packsdkandroiddocker.image sh -c "$@" ./gradlew clean
И это ошибка, которую я получаю:
В NDK отсутствует каталог "платформы". Если вы используете NDK, проверьте
для ndk.dir задан допустимый каталог NDK. В настоящее время установлено значение
/ Users / adalpari / Library / Android / SDK / NDK-расслоение. Если вы не используете
NDK, сбросьте переменную NDK из ANDROID_NDK_HOME или local.properties
убрать это предупреждение.
FAILURE: сборка не удалась, исключение.
- Что пошло не так: возникла проблема при настройке проекта ': app'.
Каталог SDK '/ Users / adalpari / Library / Android / sdk' не существует.