Просмотр исходного кода

Merge pull request #12728 from id/0318-optimize-docker-image-layers

build(docker): optimize docker image layers
Ivan Dyachkov 1 год назад
Родитель
Сommit
0ce56fc397
2 измененных файлов с 7 добавлено и 7 удалено
  1. 1 0
      .github/workflows/build_and_push_docker_images.yaml
  2. 6 7
      deploy/docker/Dockerfile

+ 1 - 0
.github/workflows/build_and_push_docker_images.yaml

@@ -204,6 +204,7 @@ jobs:
           docker exec -t -u root $CID node_dump
           docker rm -f $CID
       - name: Push docker image
+        if: inputs.publish || github.repository_owner != 'emqx'
         env:
           PROFILE: ${{ matrix.profile[0] }}
           DOCKER_REGISTRY: ${{ matrix.profile[1] }}

+ 6 - 7
deploy/docker/Dockerfile

@@ -49,19 +49,18 @@ ENV LANG=C.UTF-8
 COPY deploy/docker/docker-entrypoint.sh /usr/bin/
 COPY --from=builder /emqx-rel /opt/
 
-WORKDIR /opt/emqx
-
 RUN set -eu; \
     apt-get update; \
     apt-get install -y --no-install-recommends ca-certificates procps $(echo "${EXTRA_DEPS}" | tr ',' ' '); \
+    rm -rf /var/lib/apt/lists/*; \
     find /opt/emqx -name 'swagger*.js.map' -exec rm {} +; \
+    ln -s /opt/emqx/bin/* /usr/local/bin/; \
     groupadd -r -g 1000 emqx; \
     useradd -r -m -u 1000 -g emqx emqx; \
-    chgrp -Rf emqx /opt/emqx; \
-    chmod -Rf g+w /opt/emqx; \
-    chown -Rf emqx /opt/emqx; \
-    ln -s /opt/emqx/bin/* /usr/local/bin/; \
-    rm -rf /var/lib/apt/lists/*
+    mkdir -p /opt/emqx/log /opt/emqx/data /opt/emqx/plugins; \
+    chown -R emqx:emqx /opt/emqx/log /opt/emqx/data /opt/emqx/plugins
+
+WORKDIR /opt/emqx
 
 USER emqx