Skip to content

Commit cc6f8df

Browse files
feat: make npm install work with elastic-agent user
1 parent 84b98e1 commit cc6f8df

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

dev-tools/packaging/templates/docker/Dockerfile.elastic-agent.tmpl

+6-4
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ RUN set -e ; \
116116

117117
COPY docker-entrypoint /usr/local/bin/docker-entrypoint
118118
RUN groupadd --gid 1000 {{ .BeatName }} && \
119-
useradd -M --uid 1000 --gid 1000 --groups 0 {{ .user }} && \
119+
useradd -M --uid 1000 --gid 1000 {{ .user }} && \
120120
chmod 755 /usr/local/bin/docker-entrypoint && \
121121
true
122122

@@ -196,10 +196,13 @@ RUN cd {{$beatHome}}/.node \
196196
&& chmod ugo+rwX -R $NODE_PATH \
197197
# Install synthetics as a regular user, installing npm deps as root odesn't work
198198
# fix .node .npm and .synthetics
199-
&& chown -R {{ .user }}:{{ .user }} $NODE_PATH
199+
&& chown -R {{ .user }}:{{ .user }} $NODE_PATH \
200+
&& mkdir -p {{ $beatHome }}/.npm/_logs \
201+
&& chown -R {{ .user }}:{{ .user }} {{ $beatHome }}/.npm \
202+
&& chown -R {{ .user }}:{{ .user }} {{ $beatHome }}/.cache
200203
USER {{ .user }}
201204
# If this fails dump the NPM logs
202-
RUN (npm i -g --loglevel verbose --engine-strict @elastic/synthetics@stack_release || sh -c 'tail -n +1 /root/.npm/_logs/* && exit 1') && \
205+
RUN (npm i -g --loglevel verbose --engine-strict @elastic/synthetics@stack_release || sh -c 'tail -n +1 {{ $beatHome }}/.npm/_logs/* && exit 1') && \
203206
chmod ugo+rwX -R $NODE_PATH
204207
USER root
205208

@@ -218,7 +221,6 @@ RUN for iter in {1..10}; do \
218221

219222
{{- end }}
220223
# root group no more for elastic-agent user
221-
RUN gpasswd --delete {{ .user }} root
222224
USER {{ .user }}
223225

224226

0 commit comments

Comments
 (0)