[GitHub] [drill] vvysotskyi commented on a change in pull request #2491: DRILL-8156: Declare and chown a /data VOLUME in the Drill Dockerfile
vvysotskyi commented on a change in pull request #2491: URL: https://github.com/apache/drill/pull/2491#discussion_r824123127 ## File path: Dockerfile ## @@ -49,25 +49,33 @@ RUN mvn -Dmaven.artifact.threads=5 -T1C clean install -DskipTests # Get project version and copy built binaries into /opt/drill directory RUN VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec) \ && mkdir /opt/drill \ - && mv distribution/target/apache-drill-${VERSION}/apache-drill-${VERSION}/* /opt/drill + && mv distribution/target/apache-drill-${VERSION}/apache-drill-${VERSION}/* /opt/drill \ + && chmod -R +r /opt/drill # Target image # Set the BASE_IMAGE build arg when you invoke docker build. FROM $BASE_IMAGE -ENV DRILL_HOME=/opt/drill DRILL_USER=drilluser +# Starts Drill in embedded mode and connects to Sqlline +ENTRYPOINT $DRILL_HOME/bin/drill-embedded -RUN mkdir $DRILL_HOME +ENV DRILL_HOME=/opt/drill +ENV DRILL_USER=drilluser +ENV DRILL_USER_HOME=/var/lib/drill +ENV DRILL_LOG_DIR=$DRILL_USER_HOME/log +ENV DATA_VOL=/data -RUN groupadd -g 999 $DRILL_USER \ - && useradd -r -u 999 -g $DRILL_USER $DRILL_USER -m -d /var/lib/drill \ - && chown -R $DRILL_USER: $DRILL_HOME +RUN mkdir $DRILL_HOME $DATA_VOL -USER $DRILL_USER +RUN groupadd -g 999 $DRILL_USER \ Review comment: Could these two commands be combined? ## File path: Dockerfile ## @@ -49,25 +49,33 @@ RUN mvn -Dmaven.artifact.threads=5 -T1C clean install -DskipTests # Get project version and copy built binaries into /opt/drill directory RUN VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec) \ && mkdir /opt/drill \ - && mv distribution/target/apache-drill-${VERSION}/apache-drill-${VERSION}/* /opt/drill + && mv distribution/target/apache-drill-${VERSION}/apache-drill-${VERSION}/* /opt/drill \ + && chmod -R +r /opt/drill # Target image # Set the BASE_IMAGE build arg when you invoke docker build. FROM $BASE_IMAGE -ENV DRILL_HOME=/opt/drill DRILL_USER=drilluser +# Starts Drill in embedded mode and connects to Sqlline +ENTRYPOINT $DRILL_HOME/bin/drill-embedded -RUN mkdir $DRILL_HOME +ENV DRILL_HOME=/opt/drill +ENV DRILL_USER=drilluser +ENV DRILL_USER_HOME=/var/lib/drill +ENV DRILL_LOG_DIR=$DRILL_USER_HOME/log +ENV DATA_VOL=/data -RUN groupadd -g 999 $DRILL_USER \ - && useradd -r -u 999 -g $DRILL_USER $DRILL_USER -m -d /var/lib/drill \ - && chown -R $DRILL_USER: $DRILL_HOME +RUN mkdir $DRILL_HOME $DATA_VOL -USER $DRILL_USER +RUN groupadd -g 999 $DRILL_USER \ + && useradd -r -u 999 -g $DRILL_USER $DRILL_USER -m -d $DRILL_USER_HOME \ + && chown $DRILL_USER: $DATA_VOL -COPY --from=build --chown=$DRILL_USER /opt/drill $DRILL_HOME +# A Docker volume where users may store persistent data, e.g. persistent Drill +# config by specifying a Drill BOOT option of sys.store.provider.local.path: "/data". +VOLUME $DATA_VOL -# Starts Drill in embedded mode and connects to Sqlline -ENTRYPOINT $DRILL_HOME/bin/drill-embedded Review comment: Looks like it was deleted... ## File path: Dockerfile ## @@ -49,25 +49,33 @@ RUN mvn -Dmaven.artifact.threads=5 -T1C clean install -DskipTests # Get project version and copy built binaries into /opt/drill directory RUN VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec) \ && mkdir /opt/drill \ - && mv distribution/target/apache-drill-${VERSION}/apache-drill-${VERSION}/* /opt/drill + && mv distribution/target/apache-drill-${VERSION}/apache-drill-${VERSION}/* /opt/drill \ + && chmod -R +r /opt/drill Review comment: It's also fine if this could help instead of making chown in the target image. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [drill] vvysotskyi commented on a change in pull request #2491: DRILL-8156: Declare and chown a /data VOLUME in the Drill Dockerfile
vvysotskyi commented on a change in pull request #2491: URL: https://github.com/apache/drill/pull/2491#discussion_r822838159 ## File path: Dockerfile ## @@ -56,17 +56,26 @@ RUN VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --n # Set the BASE_IMAGE build arg when you invoke docker build. FROM $BASE_IMAGE -ENV DRILL_HOME=/opt/drill DRILL_USER=drilluser +ENV DRILL_HOME=/opt/drill +ENV DRILL_USER=drilluser +ENV DRILL_USER_HOME=/var/lib/drill +ENV DRILL_LOG_DIR=$DRILL_USER_HOME/log +ENV DATA_VOL=/data -RUN mkdir $DRILL_HOME +RUN mkdir $DRILL_HOME $DATA_VOL + +COPY --from=build /opt/drill $DRILL_HOME RUN groupadd -g 999 $DRILL_USER \ - && useradd -r -u 999 -g $DRILL_USER $DRILL_USER -m -d /var/lib/drill \ - && chown -R $DRILL_USER: $DRILL_HOME + && useradd -r -u 999 -g $DRILL_USER $DRILL_USER -m -d $DRILL_USER_HOME \ + && chown $DRILL_USER: $DATA_VOL \ + && chmod -R +r $DRILL_HOME Review comment: Instead of doing it here, you can use the `--chmod` flag when doing the COPY command. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [drill] vvysotskyi commented on a change in pull request #2491: DRILL-8156: Declare and chown a /data VOLUME in the Drill Dockerfile
vvysotskyi commented on a change in pull request #2491: URL: https://github.com/apache/drill/pull/2491#discussion_r822834004 ## File path: Dockerfile ## @@ -56,17 +56,26 @@ RUN VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --n # Set the BASE_IMAGE build arg when you invoke docker build. FROM $BASE_IMAGE -ENV DRILL_HOME=/opt/drill DRILL_USER=drilluser +ENV DRILL_HOME=/opt/drill +ENV DRILL_USER=drilluser +ENV DRILL_USER_HOME=/var/lib/drill +ENV DRILL_LOG_DIR=$DRILL_USER_HOME/log +ENV DATA_VOL=/data -RUN mkdir $DRILL_HOME +RUN mkdir $DRILL_HOME $DATA_VOL + +COPY --from=build /opt/drill $DRILL_HOME Review comment: With these changes, we will have a much larger size of the docker image, since base layers have a larger size. Please move the copy command as close to the end as possible. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [drill] vvysotskyi commented on a change in pull request #2491: DRILL-8156: Declare and chown a /data VOLUME in the Drill Dockerfile
vvysotskyi commented on a change in pull request #2491: URL: https://github.com/apache/drill/pull/2491#discussion_r822834004 ## File path: Dockerfile ## @@ -56,17 +56,26 @@ RUN VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --n # Set the BASE_IMAGE build arg when you invoke docker build. FROM $BASE_IMAGE -ENV DRILL_HOME=/opt/drill DRILL_USER=drilluser +ENV DRILL_HOME=/opt/drill +ENV DRILL_USER=drilluser +ENV DRILL_USER_HOME=/var/lib/drill +ENV DRILL_LOG_DIR=$DRILL_USER_HOME/log +ENV DATA_VOL=/data -RUN mkdir $DRILL_HOME +RUN mkdir $DRILL_HOME $DATA_VOL + +COPY --from=build /opt/drill $DRILL_HOME Review comment: With these changes, we will have a much larger size of the docker image, since base layers have a larger size. Please move the copy command as close to the end as possible and preserve the `--chown` flag there. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org