Как обновить версию пряжи на узле: последний образ докера?
Официальный образ докера для узла: https://hub.docker.com/_/node . Это поставляется с предустановленной версией v1.x. Я хочу перейти на v2. Однако я не могу сказать, как он был установлен на этом образе. скорее всего не черезnpm
потому что если я сделаюnpm list
, не отображается в списке. Я не знаю другого способа установки. Я думал, может быть, это было через менеджер пакетов дляlinuxkit
, который, как я полагаю, является дистрибутивом, используемым образом Docker узла. Однако я посмотрел на менеджер пакетов для linuxkit — насколько я понимаю, они просто используют git clone, и есть список пакетов, доступных в/pkg
в репозитории гитхаба. Тем не менее, не один из тех.
Некоторые шаги к ответу, возможно:
- Как устанавливается установленная версия пряжи на узле: последний образ докера? [Может быть, это подскажет мне, как я могу обновить его]
- Как обновить образ докера LinuxKit?
- Как я могу увидеть Dockerfile для базового образа? [То есть
node:latest
— есть ли Dockerfile для этого, который говорит нам, как был сгенерирован образ? Если это так, это может сказать мне, какyarn
был установлен.]
3 ответа
Руководство по лучшим практикам рекомендует для (простой) локальной установки
FROM node:6
ENV YARN_VERSION 1.16.0
RUN yarn policies set-version $YARN_VERSION
в вашем Dockerfile. В любом случае это руководство стоит прочитать ;-)
Согласно Dockerfile, он устанавливается через tarbar как в alpine , так и в debian :
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" \
&& gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
&& mkdir -p /opt \
&& tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \
&& rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
Вы можете использовать аналогичные команды для загрузки и использованияln
чтобы создать символическую ссылку для вашей версии, как указано выше.
- согласно
Dockerfile
, вы можете изменитьENV YARN_VERSION
к специальной версии.
судьи
https://github.com/nodejs/docker-node/blob/main/18/alpine3.16/Dockerfile#L77
https://github.com/nodejs/docker-node#варианты изображения
https://github.com/nodejs/docker-node/blob/main/versions.json