Понимание ФАЙЛА docker

#node.js #docker #alpine

#node.js #докер #alpine-linux #docker

Вопрос:

Я использую nodejs 11 с alpine на своих серверах, используя FROM node:11-alpine line. итак, я понимаю, что он использует версию nodejs 11, но как насчет версии alpine? Я проверил вручную на сервере, что он использует alpine версии 3.9, но что, если я захочу изменить номер версии alpine?

Одно из решений, которое я знаю, — создать собственный слой, например

 FROM alpine:{version}

ENV NODE_VERSION 11

then installing nodejs
  

Я просто хочу понять, могу ли я сделать это в обход номера версии alpine тоже в FROM node:11-alpine

Ответ №1:

Когда вы вводите FROM в файле docker, он будет искать изображение с этим именем. Изображения могут содержать любую конфигурацию, которую кто-либо хочет включить, и ее можно назвать так, как они хотят.

При этом существует много образов узлов. https://hub.docker.com/_/node

На этой странице есть много изображений узла в разных версиях alpine. Если вы не можете найти там нужный образ, вам может потребоваться создать свою собственную конфигурацию, как вы предложили. Вы могли бы сами создать базовый образ node alpine, на котором вы основываете все свои изображения приложений.

Я надеюсь, вы найдете то, что ищете. Я обычно создаю свой образ на основе debian и устанавливаю версию node, которую я хочу для этого проекта. У меня есть пример этого в https://github.com/jensen/assistbot/blob/master/Dockerfile