Shell-скрипт, чтобы создать исполняемый файл из node.js


Я пытаюсь ompile архиве node.js исполняемый в один исполняемый с помощью узла Пакера. Для меня все пакеты, исполняемые node.js в {projectRoot}/node_modedules/.bin

Структура проекта как следовать:

|- node_modules
|   |-- .bin
|       |--- executable with source code 
|- compiled-bin
|   |-- compiled executable

Я написал shell-скрипт, чтобы сделать это.
Надеюсь, что вы можете рассмотреть его:

#!/bin/bash
for filepath in ./node_modules/.bin/*; do
    export baseName="${filepath##*/}"
    nodec $filepath --clean-tmpdir --make-args=-j10 --output=./compile-bin/$baseName.out  
    chmod +x ./compile-bin/$baseName.out 
done

Это файла Docker, я использовал, чтобы запустить данный скрипт в контейнер:

FROM node:8.3.0 as package

WORKDIR /usr/src/app
COPY . /usr/src/app

# Install dependencies
RUN apt-get update
RUN apt-get install -y -q --no-install-recommends \
  build-essential \
  python \
  make \
  squashfs-tools \
  gcc \
  g++ \
  clang-3.5 \
  clang++-3.5

# Install nodec compiler
RUN curl -L http://enclose.io/nodec/nodec-linux-x64.gz | gunzip > /usr/local/bin/nodec
RUN chmod +x /usr/local/bin/nodec

# Install npm packages
RUN npm i --no-optional \
  && ls -lh 

# Run build scripts
RUN mkdir compile-bin \
  && chmod +x ./build-script \
  && sync \
  && ./build-script


114
1
задан 23 марта 2018 в 08:03 Источник Поделиться
Комментарии