Node.js — различия между версиями
Материал из K.Wiki
Kirill (обсуждение | вклад) (npm) |
Kirill (обсуждение | вклад) (→npm) |
||
Строка 97: | Строка 97: | ||
== npm == | == npm == | ||
+ | === Установка и обновление === | ||
+ | ==== Как обновить до последней версии? ==== | ||
+ | <pre>sudo npm install -g npm@latest</pre> | ||
+ | |||
+ | ==== Сборка и публикация ==== | ||
+ | ===== Как собрать пакет не публикуя? ===== | ||
+ | <pre>npm pack</pre> | ||
+ | |||
+ | ===== Как опубликовать пакет? ===== | ||
+ | <pre>npm publish</pre> | ||
+ | |||
+ | ===== Как опубликовать пакет в заданной области видимости? ===== | ||
+ | Нужно, чтобы выполнялись несколько условий: | ||
+ | <ul> | ||
+ | <li>Первая публикация должна происходить от пользователя, имя которого совпадает с именем области видимости.</li> | ||
+ | <li>Дальнейшие публикации доступны всем, кому добавлены права с помощью <code>npm access grant</code>.</li> | ||
+ | <li>Если нет подписки на приватную область видимости, обязательно должен быть ключ <code>--access public</code>.</li> | ||
+ | </ul> | ||
+ | |||
=== Настройки === | === Настройки === | ||
==== Где находится файл настроек? ==== | ==== Где находится файл настроек? ==== | ||
Строка 107: | Строка 126: | ||
=== Ссылки === | === Ссылки === | ||
* [https://www.8host.com/blog/ispolzovanie-npm-dlya-sozdaniya-i-publikacii-paketov-node-js-na-servere-linux/ Использование npm для создания и публикации пакетов Node.js на сервере Linux | www.8host.com] | * [https://www.8host.com/blog/ispolzovanie-npm-dlya-sozdaniya-i-publikacii-paketov-node-js-na-servere-linux/ Использование npm для создания и публикации пакетов Node.js на сервере Linux | www.8host.com] | ||
+ | * [https://docs.npmjs.com/misc/scope scope | npm Documentation] | ||
== Ссылки == | == Ссылки == |
Версия 18:04, 5 ноября 2016
Установка
Сборка из исходного кода
- Загрузить архив с исходным кодом с http://nodejs.org/download/.
-
Распаковать скачанный архив
tar -zxf node-v*.tar.gz
и перейти в полученную директорию
cd node-v*
-
Для сборки под ARM нужно еще добавить параметр настройки
./configure --without-snapshot
чтобы не было ошибки Segmentation fault при последующем запуске.
-
Собрать
make
и установить (с правами суперпользователя)
sudo make install
-
Установить npm
wget https://npmjs.org/install.sh sudo sh ./install.sh
- Настроить права доступа к файлам /usr/local/bin/node и /usr/local/bin/npm.
Ссылки
Настройка IDE
WebStorm
- Проверить, что активирован плагин NodeJS: File → Settings → Plugins.
-
Настроить плагин NodeJS: File → Settings → Languages & Frameworks → Node.js and NPM.
- В поле Node interpreter указать путь к исполняемому файлу node.js. При стандартной установке из исходников он должен быть /usr/local/bin/node.
- В поле Sources of Node.js Core Modules нажать кнопку Configure.
- В появившемся окне выбрать ссылку на исходный код используемой версии node.js или уже загруженный архив и нажать кнопку Configure.
- После завершения настройки исходного кода нажать на ссылку Edit usage scope в поле Sources of Node.js Core Modules.
- В появившемся окне кликнуть на поле Library в строке Project.
- В появившемся выпадающем списке оставить отмеченными только поля вида Node.js... и нажать кнопку OK.
- Нажать кнопку OK.
Настройка службы Ubuntu
Для того, чтобы использовать сервер, основанный на node.js, как службу в Ubuntu, нужно в директории /etc/init создать файл {имя службы}.conf :
# Запускать после инициализации файловой системы. start on filesystem # Останавливать перед выключением. stop on shutdown # Перезапускать при внеплановой остановке. respawn # Не перезапускать, если было 20 остановок за 5 секунд. respawn limit 20 5 script sudo -u {имя пользователя} nodejs {путь к основному скрипту} > {путь к log-файлу} end script
и создать ссылку на него в директории /etc/init.d:
ln -s /etc/init/{имя службы}.conf /etc/init.d/{имя службы}
({имя службы}, {имя пользователя}, {путь к основному скрипту} и {путь к log-файлу} нужно заменить на подходящие значения).
После этого станут доступны команды для:
-
запуска службы
service {имя службы} start
-
остановки службы
service {имя службы} stop
-
перезапуска службы
service {имя службы} restart
-
получения состояния службы
service {имя службы} status
npm
Установка и обновление
Как обновить до последней версии?
sudo npm install -g npm@latest
Сборка и публикация
Как собрать пакет не публикуя?
npm pack
Как опубликовать пакет?
npm publish
Как опубликовать пакет в заданной области видимости?
Нужно, чтобы выполнялись несколько условий:
- Первая публикация должна происходить от пользователя, имя которого совпадает с именем области видимости.
- Дальнейшие публикации доступны всем, кому добавлены права с помощью
npm access grant
. - Если нет подписки на приватную область видимости, обязательно должен быть ключ
--access public
.
Настройки
Где находится файл настроек?
Это можно узнать выполнив команду
npm config get userconfig
или
npm config get globalconfig
для глобального файла настроек.
Ссылки
- Использование npm для создания и публикации пакетов Node.js на сервере Linux | www.8host.com
- scope | npm Documentation