Compare commits
210 Commits
Author | SHA1 | Date | |
---|---|---|---|
61ef4951f6 | |||
a24403304f | |||
4435fa2567 | |||
1155205cf7 | |||
8684837a7b | |||
87610140b6 | |||
512955eb0a | |||
a1dda00d41 | |||
0846f649d4 | |||
57b66c8172 | |||
939c168712 | |||
759754937c | |||
74b25307de | |||
22af5432db | |||
900c126a13 | |||
92fd3c36cf | |||
59db72f452 | |||
87b1c58e0f | |||
f751354a83 | |||
4586a2f34e | |||
ffd299114a | |||
df2cc6ccee | |||
847ff6aded | |||
dd40629f09 | |||
9f2d8ca700 | |||
5b6e13f3fd | |||
5f02b4707c | |||
a6c8f5c9fc | |||
934b1b7c2f | |||
cedebef214 | |||
96d8d43018 | |||
dcd581929b | |||
d2629cd453 | |||
b9070b3a35 | |||
25849cd990 | |||
8586b68bf7 | |||
9f7b61feeb | |||
ee58a43ed4 | |||
f1dc84f8a8 | |||
d5fa32786c | |||
cd4b629f07 | |||
eca7a18409 | |||
1e620394ac | |||
39b3d5df91 | |||
2b0cceb822 | |||
e25fb766d0 | |||
83f47a5d33 | |||
c9b0009cd3 | |||
3e58b1c7c6 | |||
08515255bb | |||
4cfd049e0c | |||
0472feeaeb | |||
d8b1f5cf83 | |||
bc05ac5ce8 | |||
5e58389bbe | |||
2cef721039 | |||
1e5677e7b3 | |||
a16aa527e0 | |||
8a3ebe4edd | |||
3754370601 | |||
98e9bb7ccd | |||
d15e063c92 | |||
be3ae65d72 | |||
b75e5ef366 | |||
fd35505647 | |||
c77d2bf370 | |||
28439a4b57 | |||
7d68fdf34e | |||
8a0beb0748 | |||
54440f3d87 | |||
c3690d0ad0 | |||
469b9cda79 | |||
274939af46 | |||
edd645a222 | |||
bf3972cf55 | |||
3b581d1e11 | |||
d4f83ecdda | |||
b369197763 | |||
52cde0c4d9 | |||
e118fab8c6 | |||
b6fe7e1b36 | |||
9b264755ab | |||
11d6f9a1ec | |||
fecbcdde64 | |||
9e1d21931e | |||
81ef1f1fd9 | |||
9fa5bee1ee | |||
36099654b4 | |||
99bb05ee51 | |||
a020d12a2e | |||
f393560c78 | |||
258de44568 | |||
02b846642e | |||
7f05f5da84 | |||
a818bf8aeb | |||
d182b93d65 | |||
875da4bc76 | |||
3b2729f9bf | |||
d309093c77 | |||
78544b9c7a | |||
0b80f1b2ac | |||
094fa46f80 | |||
7c8e796611 | |||
30188f8aeb | |||
f829160720 | |||
755ddd2d77 | |||
9fbcb625d3 | |||
5ef828500b | |||
a763bc61a0 | |||
860d5c722e | |||
b370777bd4 | |||
4f280ebd13 | |||
4e10028f65 | |||
bb44e89699 | |||
2ad5215865 | |||
e60bf4dae8 | |||
d44f8d7959 | |||
33cad48fed | |||
79e0128d30 | |||
24531b63b0 | |||
a7d2b34f8b | |||
1089942cc3 | |||
f443d220c6 | |||
52866e8aa5 | |||
50cb638732 | |||
67470d22f4 | |||
5a3f5a1a72 | |||
3cdcc3738b | |||
d2c8e2b51e | |||
b69c781c4d | |||
7bc8cb3f51 | |||
1ce4382885 | |||
e9ff80ceae | |||
32ceafbd59 | |||
1acbe775fc | |||
98f9724739 | |||
a93ee5a185 | |||
90bae2fce4 | |||
ae30ceec26 | |||
f1426931fa | |||
097a741488 | |||
9d62eab807 | |||
baeb46ed81 | |||
ddd4970762 | |||
04659b9344 | |||
0ad9c4fcd3 | |||
43063e3507 | |||
02ea32961b | |||
c5365798b6 | |||
184e13b91e | |||
a1f5bbb6f0 | |||
21189adb66 | |||
4bd28a3a54 | |||
b48aa0e077 | |||
95f4b0b8e4 | |||
bb1db7e9a8 | |||
12a9413444 | |||
69d937edb0 | |||
4953e7b345 | |||
c04e941274 | |||
dfadb7e1f2 | |||
1932695c81 | |||
8f914cbf47 | |||
7b390fd1da | |||
0eb7a24dcd | |||
fe2452111e | |||
84930b7c3e | |||
cb99fd28d0 | |||
4f557b6a08 | |||
ee1f86e7ab | |||
8a3b598f66 | |||
4ebce929f8 | |||
244ada778b | |||
b85de4bd9b | |||
3762558b58 | |||
c2bb8b18fd | |||
f147ef9b46 | |||
4b4e1bedcc | |||
87bb2843f5 | |||
0f541d3101 | |||
7aa6864a74 | |||
138e25843d | |||
40d0d6b73e | |||
9a7949ea87 | |||
ef46145028 | |||
0b5ff58b7b | |||
2756a4cf4e | |||
e4dce5cbc1 | |||
6b07d92d12 | |||
ae04ea4a41 | |||
2abed13111 | |||
14da195a62 | |||
bbe957a694 | |||
963ca3e5ff | |||
108ec46426 | |||
33ebe443bb | |||
90b2c7d5f3 | |||
d16ad9bf61 | |||
dd82475256 | |||
239bf6174d | |||
0ae1d77cb2 | |||
decc90e211 | |||
ae10a9eb98 | |||
ba780fd445 | |||
27e5fc58e9 | |||
db0ed5024d | |||
3da93c3cad | |||
66ba2a6641 | |||
002707729d | |||
4733cb523e |
23
.gitignore
vendored
23
.gitignore
vendored
@ -1 +1,22 @@
|
|||||||
.idea/
|
.nogit/
|
||||||
|
|
||||||
|
# artifacts
|
||||||
|
coverage/
|
||||||
|
public/
|
||||||
|
pages/
|
||||||
|
|
||||||
|
# installs
|
||||||
|
node_modules/
|
||||||
|
|
||||||
|
# caches
|
||||||
|
.yarn/
|
||||||
|
.cache/
|
||||||
|
.rpt2_cache
|
||||||
|
|
||||||
|
# builds
|
||||||
|
dist/
|
||||||
|
dist_web/
|
||||||
|
dist_serve/
|
||||||
|
dist_ts_web/
|
||||||
|
|
||||||
|
# custom
|
@ -1,96 +1,52 @@
|
|||||||
# gitzone docker
|
# gitzone ci_docker
|
||||||
image: hosttoday/ht-docker-dbase:npmci
|
image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
|
||||||
services:
|
|
||||||
- docker:dind
|
|
||||||
variables:
|
|
||||||
DOCKER_DRIVER: overlay
|
|
||||||
|
|
||||||
|
cache:
|
||||||
|
paths:
|
||||||
|
- .npmci-cache/
|
||||||
|
key: "$CI_BUILD_STAGE"
|
||||||
|
|
||||||
|
before_script:
|
||||||
|
- npmci npm prepare
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- buildAndTest
|
|
||||||
- build
|
|
||||||
- test
|
- test
|
||||||
- release
|
- release
|
||||||
- trigger
|
- trigger
|
||||||
- pages
|
- pages
|
||||||
|
|
||||||
before_script:
|
testStable:
|
||||||
- yarn global add npmci
|
|
||||||
- npmci docker login
|
|
||||||
|
|
||||||
buildAndTest:
|
|
||||||
stage: buildAndTest
|
|
||||||
script:
|
|
||||||
- npmci docker build
|
|
||||||
- npmci docker test
|
|
||||||
except:
|
|
||||||
- tags
|
|
||||||
tags:
|
|
||||||
- lossless
|
|
||||||
- priv
|
|
||||||
|
|
||||||
build:
|
|
||||||
stage: build
|
|
||||||
script:
|
|
||||||
- npmci docker build
|
|
||||||
- npmci docker push registry.gitlab.com test
|
|
||||||
only:
|
|
||||||
- tags
|
|
||||||
- triggers
|
|
||||||
tags:
|
|
||||||
- lossless
|
|
||||||
- priv
|
|
||||||
|
|
||||||
|
|
||||||
test:
|
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
- npmci docker pull registry.gitlab.com test
|
- npmci node install stable
|
||||||
- npmci docker test
|
- npmci npm install
|
||||||
only:
|
- npmci npm test
|
||||||
- tags
|
coverage: /\d+.?\d+?\%\s*coverage/
|
||||||
- triggers
|
|
||||||
tags:
|
tags:
|
||||||
- lossless
|
- docker
|
||||||
- priv
|
|
||||||
|
|
||||||
release:
|
release:
|
||||||
|
image: registry.gitlab.com/hosttoday/ht-docker-dbase:npmci
|
||||||
|
services:
|
||||||
|
- docker:stable-dind
|
||||||
stage: release
|
stage: release
|
||||||
script:
|
script:
|
||||||
- npmci docker pull registry.gitlab.com test
|
- npmci node install lts
|
||||||
- npmci docker push docker.io
|
- npmci docker login
|
||||||
|
- npmci docker build
|
||||||
|
- npmci docker test
|
||||||
- npmci docker push registry.gitlab.com
|
- npmci docker push registry.gitlab.com
|
||||||
only:
|
only:
|
||||||
- tags
|
- tags
|
||||||
- triggers
|
|
||||||
tags:
|
tags:
|
||||||
- lossless
|
- docker
|
||||||
- priv
|
- priv
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
stage: trigger
|
stage: trigger
|
||||||
script:
|
script:
|
||||||
- npmci trigger
|
- npmci trigger
|
||||||
only:
|
|
||||||
- tags
|
|
||||||
- triggers
|
|
||||||
tags:
|
|
||||||
- lossless
|
|
||||||
- priv
|
|
||||||
|
|
||||||
pages:
|
|
||||||
before_script:
|
|
||||||
- 'npmci -v'
|
|
||||||
image: hosttoday/ht-docker-node:npmci
|
|
||||||
stage: pages
|
|
||||||
script:
|
|
||||||
- npmci command yarn global add npmpage
|
|
||||||
- npmci command npmpage
|
|
||||||
only:
|
only:
|
||||||
- tags
|
- tags
|
||||||
tags:
|
tags:
|
||||||
- docker
|
- docker
|
||||||
artifacts:
|
|
||||||
expire_in: 1 week
|
|
||||||
paths:
|
|
||||||
- public
|
|
||||||
|
63
Dockerfile
63
Dockerfile
@ -1,14 +1,16 @@
|
|||||||
FROM ubuntu:latest
|
FROM ubuntu:bionic
|
||||||
MAINTAINER Lossless GmbH <office@lossless.com>
|
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||||
|
|
||||||
|
WORKDIR /workspace
|
||||||
# important environment variables
|
# important environment variables
|
||||||
ENV NODE_VERSION_LTS="6.10.0" NODE_VERSION_STABLE="8.1.3" NVM_DIR="/usr/local/nvm"
|
ENV NODE_VERSION_LTS="14.18.1" NODE_VERSION_STABLE="16.11.1" NVM_DIR="/usr/local/nvm"
|
||||||
|
|
||||||
# Set debconf to run non-interactively and install packages
|
# Set debconf to run non-interactively and install packages
|
||||||
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections \
|
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade --no-install-recommends -y \
|
&& apt-get upgrade --no-install-recommends -y \
|
||||||
&& apt-get install -y -q --no-install-recommends \
|
&& apt-get install -y -q --no-install-recommends \
|
||||||
|
# base libs
|
||||||
software-properties-common \
|
software-properties-common \
|
||||||
apt-transport-https \
|
apt-transport-https \
|
||||||
build-essential \
|
build-essential \
|
||||||
@ -20,15 +22,60 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
|
|||||||
make \
|
make \
|
||||||
openssl \
|
openssl \
|
||||||
python \
|
python \
|
||||||
|
python3 \
|
||||||
rsync \
|
rsync \
|
||||||
ssh \
|
ssh \
|
||||||
wget \
|
wget \
|
||||||
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
# puppeteer
|
||||||
&& echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \
|
gconf-service \
|
||||||
&& apt-get update \
|
libasound2 \
|
||||||
&& apt-get install yarn -y \
|
libatk1.0-0 \
|
||||||
|
libc6 \
|
||||||
|
libcairo2 \
|
||||||
|
libcups2 \
|
||||||
|
libdbus-1-3 \
|
||||||
|
libexpat1 \
|
||||||
|
libfontconfig1 \
|
||||||
|
libgcc1 \
|
||||||
|
libgconf-2-4 \
|
||||||
|
libgdk-pixbuf2.0-0 \
|
||||||
|
libglib2.0-0 \
|
||||||
|
libgtk-3-0 \
|
||||||
|
libnspr4 \
|
||||||
|
libpango-1.0-0 \
|
||||||
|
libpangocairo-1.0-0 \
|
||||||
|
libstdc++6 \
|
||||||
|
libx11-6 \
|
||||||
|
libx11-xcb1 \
|
||||||
|
libxcb1 \
|
||||||
|
libxcomposite1 \
|
||||||
|
libxcursor1 \
|
||||||
|
libxdamage1 \
|
||||||
|
libxext6 \
|
||||||
|
libxfixes3 \
|
||||||
|
libxi6 \
|
||||||
|
libxrandr2 \
|
||||||
|
libxrender1 \
|
||||||
|
libxss1 \
|
||||||
|
libxtst6 \
|
||||||
|
ca-certificates \
|
||||||
|
fonts-liberation \
|
||||||
|
libappindicator1 \
|
||||||
|
libnss3 \
|
||||||
|
lsb-release \
|
||||||
|
xdg-utils \
|
||||||
|
|
||||||
|
# chrome
|
||||||
|
&& wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
||||||
|
&& apt install -y -q --no-install-recommends ./google-chrome-stable_current_amd64.deb \
|
||||||
|
|
||||||
|
# mongodb
|
||||||
|
&& curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add - \
|
||||||
|
&& echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list \
|
||||||
|
&& apt-get install -y -q --no-install-recommends \
|
||||||
|
mongodb-org \
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
&& rm -r /var/lib/apt/lists/*
|
&& rm -r /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Install nvm with node and npm
|
# Install nvm with node and npm
|
||||||
RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash
|
RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
|
||||||
|
10
Dockerfile_alpine
Normal file
10
Dockerfile_alpine
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
FROM node:14.15.4-alpine
|
||||||
|
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||||
|
RUN apk update && apk add bash libc6-compat alpine-sdk
|
||||||
|
ENV PYTHONUNBUFFERED=1
|
||||||
|
RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python
|
||||||
|
RUN python3 -m ensurepip
|
||||||
|
RUN pip3 install --no-cache --upgrade pip setuptools
|
||||||
|
|
||||||
|
|
||||||
|
ENV NODE_OPTIONS="--max_old_space_size=1000"
|
12
Dockerfile_iot
Normal file
12
Dockerfile_iot
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
FROM hosttoday/ht-docker-node:stable as stage1
|
||||||
|
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends qemu-user-static binfmt-support
|
||||||
|
# the following lines need to be run on a system that supports both architectures
|
||||||
|
# update-binfmts --enable qemu-arm \
|
||||||
|
# && update-binfmts --display qemu-arm \
|
||||||
|
# && mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc \
|
||||||
|
# && echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-static:' > /proc/sys/fs/binfmt_misc/register
|
||||||
|
|
||||||
|
FROM arm32v7/node:lts-jessie as stage2
|
||||||
|
COPY --from=stage1 /usr/bin/qemu-arm-static /usr/bin/qemu-arm-static
|
||||||
|
|
@ -1,11 +1,12 @@
|
|||||||
FROM hosttoday/ht-docker-node:latest
|
FROM hosttoday/ht-docker-node:latest
|
||||||
MAINTAINER Lossless GmbH <office@lossless.com>
|
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||||
|
|
||||||
RUN bash -c "source $NVM_DIR/nvm.sh \
|
RUN bash -c "source $NVM_DIR/nvm.sh \
|
||||||
&& nvm install $NODE_VERSION_LTS \
|
&& nvm install $NODE_VERSION_LTS \
|
||||||
&& nvm alias default $NODE_VERSION_LTS \
|
&& nvm alias default $NODE_VERSION_LTS \
|
||||||
&& nvm use default \
|
&& nvm use default \
|
||||||
&& npm config set unsafe-perm true \
|
&& npm config set unsafe-perm true \
|
||||||
|
&& npm install -g agentkeepalive \
|
||||||
&& npm install -g npm"
|
&& npm install -g npm"
|
||||||
|
|
||||||
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION_LTS/lib/node_modules
|
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION_LTS/lib/node_modules
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
FROM hosttoday/ht-docker-node:stable
|
|
||||||
MAINTAINER Lossless GmbH <office@lossless.com>
|
|
||||||
|
|
||||||
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 \
|
|
||||||
&& echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.2.list \
|
|
||||||
&& apt-get update \
|
|
||||||
&& apt-get install -y mongodb-org
|
|
@ -1,4 +1,4 @@
|
|||||||
FROM hosttoday/ht-docker-node:stable
|
FROM hosttoday/ht-docker-node:stable
|
||||||
MAINTAINER Lossless GmbH <office@lossless.com>
|
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||||
|
|
||||||
RUN npm install -g npmci
|
RUN npm install -g @shipzone/npmci
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
FROM hosttoday/ht-docker-node:stable
|
|
||||||
RUN curl -sSL https://get.docker.com/ | sh
|
|
@ -1,14 +0,0 @@
|
|||||||
FROM hosttoday/ht-docker-node:npmci
|
|
||||||
MAINTAINER Lossless GmbH <office@lossless.com>
|
|
||||||
|
|
||||||
# Install Java.
|
|
||||||
RUN \
|
|
||||||
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && \
|
|
||||||
add-apt-repository -y ppa:webupd8team/java && \
|
|
||||||
apt-get update && \
|
|
||||||
apt-get install -y oracle-java8-installer && \
|
|
||||||
rm -rf /var/lib/apt/lists/* && \
|
|
||||||
rm -rf /var/cache/oracle-jdk8-installer
|
|
||||||
|
|
||||||
# Define commonly used JAVA_HOME variable
|
|
||||||
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
|
|
@ -1,3 +0,0 @@
|
|||||||
FROM hosttoday/ht-docker-node:npmci
|
|
||||||
RUN bash -c "$(curl -fsSL https://s3.amazonaws.com/tools.nanobox.io/bootstrap/ci.sh)"
|
|
||||||
RUN nanobox config set ci-mode true
|
|
@ -1,10 +1,12 @@
|
|||||||
FROM hosttoday/ht-docker-node:latest
|
FROM hosttoday/ht-docker-node:latest
|
||||||
|
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||||
|
|
||||||
RUN bash -c "source $NVM_DIR/nvm.sh \
|
RUN bash -c "source $NVM_DIR/nvm.sh \
|
||||||
&& nvm install $NODE_VERSION_STABLE \
|
&& nvm install $NODE_VERSION_STABLE \
|
||||||
&& nvm alias default $NODE_VERSION_STABLE \
|
&& nvm alias default $NODE_VERSION_STABLE \
|
||||||
&& nvm use default \
|
&& nvm use default \
|
||||||
&& npm config set unsafe-perm true \
|
&& npm config set unsafe-perm true \
|
||||||
|
&& npm install -g agentkeepalive \
|
||||||
&& npm install -g npm"
|
&& npm install -g npm"
|
||||||
|
|
||||||
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION_STABLE/lib/node_modules
|
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION_STABLE/lib/node_modules
|
||||||
|
4
Dockerfile_tsdocker
Normal file
4
Dockerfile_tsdocker
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
FROM hosttoday/ht-docker-node:lts
|
||||||
|
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||||
|
|
||||||
|
RUN npm install -g @shipzone/npmci @gitzone/tsdocker @gitzone/tsrun
|
2
LICENSE
2
LICENSE
@ -1,6 +1,6 @@
|
|||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright (c) 2016 Host.Today
|
Copyright (c) 2016 Lossless GmbH
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
@ -1,48 +0,0 @@
|
|||||||
---
|
|
||||||
name: ht-docker-node
|
|
||||||
description: the ultimate docker-node image
|
|
||||||
---
|
|
||||||
# ht-docker-node
|
|
||||||
the ultimate docker node image
|
|
||||||
|
|
||||||
## Status
|
|
||||||
[](https://gitlab.com/hosttoday/ht-docker-node/commits/master)
|
|
||||||
|
|
||||||
## Availability
|
|
||||||
Registry | Image Path
|
|
||||||
--- | ---
|
|
||||||
GitLab Registry | registry.gitlab.com/hosttoday/ht-docker-node
|
|
||||||
Docker Hub | hosttoday/ht-docker-node
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
The purpose of this Docker image is to provide a robust base for node apps and CI.
|
|
||||||
It comes in different flavours and all of them have node, npm, git and ssh in PATH.
|
|
||||||
|
|
||||||
The **:npmci flavour** has npmci in path and can install any required node version and update PATH accordingly:
|
|
||||||
|
|
||||||
```Dockerfile
|
|
||||||
FROM hosttoday/ht-docker-node:npmci
|
|
||||||
RUN npmci install [node_version_number] // this installs node using node and sets the default to the new node and npm versions
|
|
||||||
```
|
|
||||||
|
|
||||||
## Flavour Overview:
|
|
||||||
|
|
||||||
* **:lts** - node lts version, equals :latest
|
|
||||||
* **:stable** - node stable version
|
|
||||||
* **:npmci** - npmci preinstalled
|
|
||||||
* **:npmcijava - npmci + java
|
|
||||||
* **:npmts** - npmci + npmts preinstalled
|
|
||||||
* **:npmpage** - npmci + npmts + npmpage preinstalled
|
|
||||||
* **:mongo** - npmci + npmts + mongo
|
|
||||||
|
|
||||||
## optimized for performance with npmci and npmts
|
|
||||||
Take a goof look at the **npmts** and **npmci** tools on npm. They make development of TypeScript node modules rediculouly easy :)
|
|
||||||
|
|
||||||
The **:npmcijava** flavour works together with **smartwebdriver** so you can test all your cool polymer elements in a headless chrome environment or sauce :)
|
|
||||||
|
|
||||||
For further information read the linked docs at the top of this README.
|
|
||||||
|
|
||||||
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
|
||||||
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
|
|
||||||
|
|
||||||
[](https://host.today)
|
|
1
node_modules/.yarn-integrity
generated
vendored
1
node_modules/.yarn-integrity
generated
vendored
@ -1 +0,0 @@
|
|||||||
549854b8a60607db81d4c58008d59f812d744acba026266f380acd942941356a
|
|
18
npmextra.json
Normal file
18
npmextra.json
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
"gitzone": {
|
||||||
|
"module": {
|
||||||
|
"githost": "gitlab.com",
|
||||||
|
"gitscope": "hosttoday",
|
||||||
|
"gitrepo": "ht-docker-node",
|
||||||
|
"shortDescription": "docker image with nodejs and shipzone.io support",
|
||||||
|
"npmPackagename": "@hosttoday/ht-docker-node",
|
||||||
|
"license": "MIT"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"npmci": {
|
||||||
|
"dockerRegistries": [
|
||||||
|
"docker.io",
|
||||||
|
"registry.gitlab.com"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
5
package-lock.json
generated
Normal file
5
package-lock.json
generated
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"name": "ht-docker-node",
|
||||||
|
"version": "5.0.73",
|
||||||
|
"lockfileVersion": 1
|
||||||
|
}
|
24
package.json
24
package.json
@ -1,10 +1,11 @@
|
|||||||
{
|
{
|
||||||
"name": "ht-docker-node",
|
"name": "ht-docker-node",
|
||||||
"version": "4.3.32",
|
"version": "5.0.73",
|
||||||
"description": "docker image with nodejs with shipzone.io support",
|
"description": "docker image with nodejs and shipzone.io support",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "echo \"Error: no test specified\" && exit 1"
|
"test": "echo \"no npm test specified\"",
|
||||||
|
"build": "echo \"Not needed for now\""
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@ -15,5 +16,20 @@
|
|||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/HostToday/ht-docker-node/issues"
|
"url": "https://github.com/HostToday/ht-docker-node/issues"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/HostToday/ht-docker-node#readme"
|
"homepage": "https://github.com/HostToday/ht-docker-node#readme",
|
||||||
|
"private": true,
|
||||||
|
"files": [
|
||||||
|
"ts/*",
|
||||||
|
"ts_web/*",
|
||||||
|
"dist/*",
|
||||||
|
"dist_web/*",
|
||||||
|
"dist_ts_web/*",
|
||||||
|
"assets/*",
|
||||||
|
"cli.js",
|
||||||
|
"npmextra.json",
|
||||||
|
"readme.md"
|
||||||
|
],
|
||||||
|
"directories": {
|
||||||
|
"test": "test"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,411 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>Quicksite</title>
|
|
||||||
<link
|
|
||||||
href="https://fonts.googleapis.com/css?family=Roboto+Mono:300,400,700|Roboto+Slab:300,400,700|Roboto:300,400,700"
|
|
||||||
rel="stylesheet"
|
|
||||||
>
|
|
||||||
<style>
|
|
||||||
.menuBox {
|
|
||||||
box-shadow: 0px 0px 5px #CCCCCC;
|
|
||||||
margin: auto;
|
|
||||||
box-sizing: border-box;
|
|
||||||
margin-bottom: 70px;
|
|
||||||
margin-top: 0px;
|
|
||||||
width: 100%;
|
|
||||||
background: #2196F3;
|
|
||||||
position: fixed;
|
|
||||||
padding: 15px;
|
|
||||||
will-change: transform; }
|
|
||||||
.menuBox .menuItems {
|
|
||||||
text-align: right; }
|
|
||||||
.menuBox .menuItems a {
|
|
||||||
display: inline-block;
|
|
||||||
padding: 0px 10px;
|
|
||||||
border-right: 1px #fff solid;
|
|
||||||
font-size: 15px;
|
|
||||||
font-weight: 400;
|
|
||||||
letter-spacing: 1px;
|
|
||||||
text-transform: uppercase;
|
|
||||||
text-decoration: none;
|
|
||||||
color: #fafafa; }
|
|
||||||
.menuBox .menuItems a:hover {
|
|
||||||
color: #fff; }
|
|
||||||
.menuBox .menuItems a:last-of-type {
|
|
||||||
border-right: none; }
|
|
||||||
|
|
||||||
h1,
|
|
||||||
h2,
|
|
||||||
h3,
|
|
||||||
h4 {
|
|
||||||
margin: 1.414rem 0 .5rem;
|
|
||||||
font-weight: inherit;
|
|
||||||
font-family: 'Roboto Slab', serif;
|
|
||||||
line-height: 1.42;
|
|
||||||
text-align: center; }
|
|
||||||
|
|
||||||
h1 {
|
|
||||||
margin-top: 0;
|
|
||||||
font-size: 3.998rem; }
|
|
||||||
h1::after {
|
|
||||||
display: block;
|
|
||||||
margin: auto;
|
|
||||||
margin-top: 0px;
|
|
||||||
width: 200px;
|
|
||||||
border-top: 2px #e4002b solid;
|
|
||||||
content: ''; }
|
|
||||||
h1 + h2 {
|
|
||||||
font-weight: 300;
|
|
||||||
margin-top: 5px;
|
|
||||||
font-size: 25px; }
|
|
||||||
|
|
||||||
h2 {
|
|
||||||
font-size: 2.827rem; }
|
|
||||||
|
|
||||||
h3 {
|
|
||||||
font-size: 1.999rem; }
|
|
||||||
|
|
||||||
h4 {
|
|
||||||
font-size: 1.414rem; }
|
|
||||||
|
|
||||||
h5 {
|
|
||||||
font-size: 1.121rem; }
|
|
||||||
|
|
||||||
h6 {
|
|
||||||
font-size: .88rem; }
|
|
||||||
|
|
||||||
table {
|
|
||||||
-webkit-transition: all 0.3s ease;
|
|
||||||
-o-transition: all 0.3s ease;
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
width: 100%;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
margin-left: 0px;
|
|
||||||
margin-right: 0px;
|
|
||||||
background-color: #fff;
|
|
||||||
box-shadow: 0px 0px 3px #ccc;
|
|
||||||
border-radius: 3px;
|
|
||||||
padding: 10px; }
|
|
||||||
@media screen and (min-width: 768px) {
|
|
||||||
table {
|
|
||||||
width: 768px; } }
|
|
||||||
@media screen and (min-width: 1200px) {
|
|
||||||
table {
|
|
||||||
width: 968px;
|
|
||||||
margin-left: -100px;
|
|
||||||
margin-right: -100px; } }
|
|
||||||
table thead tr,
|
|
||||||
table tbody tr,
|
|
||||||
table tfoot tr {
|
|
||||||
-webkit-transition: all 0.3s ease;
|
|
||||||
-o-transition: all 0.3s ease;
|
|
||||||
transition: all 0.3s ease; }
|
|
||||||
table thead tr th,
|
|
||||||
table thead tr td,
|
|
||||||
table tbody tr th,
|
|
||||||
table tbody tr td,
|
|
||||||
table tfoot tr th,
|
|
||||||
table tfoot tr td {
|
|
||||||
text-align: left;
|
|
||||||
padding: 10px;
|
|
||||||
vertical-align: top;
|
|
||||||
border-top: 0;
|
|
||||||
-webkit-transition: all 0.3s ease;
|
|
||||||
-o-transition: all 0.3s ease;
|
|
||||||
transition: all 0.3s ease; }
|
|
||||||
table thead tr th {
|
|
||||||
font-weight: 400;
|
|
||||||
color: #757575;
|
|
||||||
vertical-align: bottom;
|
|
||||||
border-bottom: 1px solid rgba(0, 0, 0, 0.12); }
|
|
||||||
table caption + thead tr:first-child th,
|
|
||||||
table caption + thead tr:first-child td,
|
|
||||||
table colgroup + thead tr:first-child th,
|
|
||||||
table colgroup + thead tr:first-child td,
|
|
||||||
table thead:first-child tr:first-child th,
|
|
||||||
table thead:first-child tr:first-child td {
|
|
||||||
border-top: 0; }
|
|
||||||
table tbody + tbody {
|
|
||||||
border-top: 1px solid rgba(0, 0, 0, 0.12); }
|
|
||||||
|
|
||||||
blockquote {
|
|
||||||
padding: 0px;
|
|
||||||
page-break-inside: avoid;
|
|
||||||
margin: 0;
|
|
||||||
border-left: 5px solid #7a7a7a;
|
|
||||||
font-style: italic;
|
|
||||||
text-align: left; }
|
|
||||||
blockquote p {
|
|
||||||
padding: 10px; }
|
|
||||||
|
|
||||||
table {
|
|
||||||
-webkit-transition: all 0.3s ease;
|
|
||||||
-o-transition: all 0.3s ease;
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
width: 100%;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
margin-left: 0px;
|
|
||||||
margin-right: 0px;
|
|
||||||
background-color: #fff;
|
|
||||||
box-shadow: 0px 0px 3px #ccc;
|
|
||||||
border-radius: 3px;
|
|
||||||
padding: 10px; }
|
|
||||||
@media screen and (min-width: 768px) {
|
|
||||||
table {
|
|
||||||
width: 768px; } }
|
|
||||||
@media screen and (min-width: 1200px) {
|
|
||||||
table {
|
|
||||||
width: 968px;
|
|
||||||
margin-left: -100px;
|
|
||||||
margin-right: -100px; } }
|
|
||||||
table thead tr,
|
|
||||||
table tbody tr,
|
|
||||||
table tfoot tr {
|
|
||||||
-webkit-transition: all 0.3s ease;
|
|
||||||
-o-transition: all 0.3s ease;
|
|
||||||
transition: all 0.3s ease; }
|
|
||||||
table thead tr th,
|
|
||||||
table thead tr td,
|
|
||||||
table tbody tr th,
|
|
||||||
table tbody tr td,
|
|
||||||
table tfoot tr th,
|
|
||||||
table tfoot tr td {
|
|
||||||
text-align: left;
|
|
||||||
padding: 10px;
|
|
||||||
vertical-align: top;
|
|
||||||
border-top: 0;
|
|
||||||
-webkit-transition: all 0.3s ease;
|
|
||||||
-o-transition: all 0.3s ease;
|
|
||||||
transition: all 0.3s ease; }
|
|
||||||
table thead tr th {
|
|
||||||
font-weight: 400;
|
|
||||||
color: #757575;
|
|
||||||
vertical-align: bottom;
|
|
||||||
border-bottom: 1px solid rgba(0, 0, 0, 0.12); }
|
|
||||||
table caption + thead tr:first-child th,
|
|
||||||
table caption + thead tr:first-child td,
|
|
||||||
table colgroup + thead tr:first-child th,
|
|
||||||
table colgroup + thead tr:first-child td,
|
|
||||||
table thead:first-child tr:first-child th,
|
|
||||||
table thead:first-child tr:first-child td {
|
|
||||||
border-top: 0; }
|
|
||||||
table tbody + tbody {
|
|
||||||
border-top: 1px solid rgba(0, 0, 0, 0.12); }
|
|
||||||
|
|
||||||
.content {
|
|
||||||
margin: auto;
|
|
||||||
padding-top: 110px;
|
|
||||||
max-width: 768px; }
|
|
||||||
@media screen and (max-width: 808px) {
|
|
||||||
.content {
|
|
||||||
margin-left: 20px;
|
|
||||||
margin-right: 20px; } }
|
|
||||||
|
|
||||||
.footer {
|
|
||||||
border-top: 2px #333 solid;
|
|
||||||
margin: auto;
|
|
||||||
margin-top: 70px;
|
|
||||||
margin-bottom: 60px;
|
|
||||||
max-width: 768px; }
|
|
||||||
@media screen and (min-width: 500px) {
|
|
||||||
.footer .footerGridContainer {
|
|
||||||
margin-left: -20px;
|
|
||||||
margin-right: -20px; } }
|
|
||||||
.footer .footerGridContainer::after {
|
|
||||||
clear: both;
|
|
||||||
content: "";
|
|
||||||
display: block; }
|
|
||||||
.footer .footerGridContainer .footerColumn {
|
|
||||||
padding-top: 20px; }
|
|
||||||
@media screen and (min-width: 500px) {
|
|
||||||
.footer .footerGridContainer .footerColumn {
|
|
||||||
width: calc(33.33333% - 26.66667px);
|
|
||||||
float: left;
|
|
||||||
margin-left: 20px; } }
|
|
||||||
.footer .footerGridContainer .footerColumn h1 {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: 700;
|
|
||||||
text-align: left;
|
|
||||||
text-transform: uppercase; }
|
|
||||||
.footer .footerGridContainer .footerColumn h1::after {
|
|
||||||
content: none; }
|
|
||||||
.footer .footerGridContainer .footerColumn a {
|
|
||||||
color: #333;
|
|
||||||
text-decoration: none;
|
|
||||||
display: block;
|
|
||||||
padding: 2px 10px 2px 10px;
|
|
||||||
border-left: #CCC 2px solid;
|
|
||||||
-webkit-transition: all 0.1s ease;
|
|
||||||
-o-transition: all 0.1s ease;
|
|
||||||
transition: all 0.1s ease; }
|
|
||||||
.footer .footerGridContainer .footerColumn a:hover {
|
|
||||||
border-left: 2px #e4002b solid;
|
|
||||||
background: #e8e8e8; }
|
|
||||||
.footer .footerGridContainer .footerColumn a + span {
|
|
||||||
-webkit-transition: all 0.1s ease;
|
|
||||||
-o-transition: all 0.1s ease;
|
|
||||||
transition: all 0.1s ease;
|
|
||||||
color: #666;
|
|
||||||
font-family: 'Roboto Mono', monospace;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 10px;
|
|
||||||
display: block;
|
|
||||||
padding-left: 10px;
|
|
||||||
border-left: 2px #eee solid;
|
|
||||||
margin-bottom: 5px; }
|
|
||||||
.footer .footerGridContainer .footerColumn a:hover + span {
|
|
||||||
border-left: 2px #e4002b solid;
|
|
||||||
background: #f0f0f0; }
|
|
||||||
|
|
||||||
@media print {
|
|
||||||
*,
|
|
||||||
*:before,
|
|
||||||
*:after {
|
|
||||||
background: transparent !important;
|
|
||||||
color: #000 !important;
|
|
||||||
box-shadow: none !important;
|
|
||||||
text-shadow: none !important; }
|
|
||||||
a,
|
|
||||||
a:visited {
|
|
||||||
text-decoration: underline; }
|
|
||||||
a[href]:after {
|
|
||||||
content: " (" attr(href) ")"; }
|
|
||||||
abbr[title]:after {
|
|
||||||
content: " (" attr(title) ")"; }
|
|
||||||
a[href^="#"]:after,
|
|
||||||
a[href^="javascript:"]:after {
|
|
||||||
content: ""; }
|
|
||||||
pre {
|
|
||||||
border: 1px solid #999;
|
|
||||||
page-break-inside: avoid; }
|
|
||||||
thead {
|
|
||||||
display: table-header-group; }
|
|
||||||
tr {
|
|
||||||
page-break-inside: avoid; }
|
|
||||||
p,
|
|
||||||
h2,
|
|
||||||
h3 {
|
|
||||||
orphans: 3;
|
|
||||||
widows: 3; }
|
|
||||||
h2,
|
|
||||||
h3 {
|
|
||||||
page-break-after: avoid; } }
|
|
||||||
|
|
||||||
html {
|
|
||||||
font-size: 12px; }
|
|
||||||
|
|
||||||
@media screen and (min-width: 32rem) and (max-width: 48rem) {
|
|
||||||
html {
|
|
||||||
font-size: 15px; } }
|
|
||||||
|
|
||||||
@media screen and (min-width: 48rem) {
|
|
||||||
html {
|
|
||||||
font-size: 16px; } }
|
|
||||||
|
|
||||||
p {
|
|
||||||
font-size: 1rem;
|
|
||||||
margin-bottom: 1.3rem; }
|
|
||||||
|
|
||||||
small {
|
|
||||||
font-size: .707em; }
|
|
||||||
|
|
||||||
canvas,
|
|
||||||
iframe,
|
|
||||||
video,
|
|
||||||
svg,
|
|
||||||
select,
|
|
||||||
textarea {
|
|
||||||
max-width: 100%; }
|
|
||||||
|
|
||||||
body {
|
|
||||||
color: #444;
|
|
||||||
font-family: 'Roboto', sans-serif;
|
|
||||||
font-weight: 300;
|
|
||||||
line-height: 1.85;
|
|
||||||
margin: 0px; }
|
|
||||||
|
|
||||||
a,
|
|
||||||
a:visited {
|
|
||||||
color: #3498db; }
|
|
||||||
|
|
||||||
a:hover, a:focus, a:active {
|
|
||||||
color: #2980b9; }
|
|
||||||
|
|
||||||
pre {
|
|
||||||
background-color: #fafafa;
|
|
||||||
padding: 1rem;
|
|
||||||
text-align: left; }
|
|
||||||
|
|
||||||
ul,
|
|
||||||
ol,
|
|
||||||
li {
|
|
||||||
text-align: left; }
|
|
||||||
|
|
||||||
p {
|
|
||||||
color: #777; }
|
|
||||||
|
|
||||||
</style>
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class='menuBox'>
|
|
||||||
<div class='menuItems'>
|
|
||||||
<a href='./index.html'>index</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class='content'>
|
|
||||||
<h1 id="ht-docker-node">ht-docker-node</h1>
|
|
||||||
<p>the ultimate docker node image</p>
|
|
||||||
<h2 id="status">Status</h2>
|
|
||||||
<p><a href="https://gitlab.com/hosttoday/ht-docker-node/commits/master"><img src="https://gitlab.com/hosttoday/ht-docker-node/badges/master/build.svg" alt="build status"></a></p>
|
|
||||||
<h2 id="availability">Availability</h2>
|
|
||||||
<table>
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>Registry</th>
|
|
||||||
<th>Image Path</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>GitLab Registry</td>
|
|
||||||
<td>registry.gitlab.com/hosttoday/ht-docker-node</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Docker Hub</td>
|
|
||||||
<td>hosttoday/ht-docker-node</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<h2 id="usage">Usage</h2>
|
|
||||||
<p>The purpose of this Docker image is to provide a robust base for node apps and CI.
|
|
||||||
It comes in different flavours and all of them have node, npm, git and ssh in PATH.</p>
|
|
||||||
<p>The <strong>:npmci flavour</strong> has npmci in path and can install any required node version and update PATH accordingly:</p>
|
|
||||||
<pre><code class="lang-Dockerfile">FROM hosttoday/ht-docker-<span class="hljs-keyword">node</span><span class="hljs-title">:npmci</span>
|
|
||||||
RUN npmci install [node_version_number] // this installs <span class="hljs-keyword">node</span> <span class="hljs-title">using</span> <span class="hljs-keyword">node</span> <span class="hljs-title">and</span> sets the default to the new <span class="hljs-keyword">node</span> <span class="hljs-title">and</span> npm versions
|
|
||||||
</code></pre>
|
|
||||||
<h2 id="flavour-overview-">Flavour Overview:</h2>
|
|
||||||
<ul>
|
|
||||||
<li><strong>:lts</strong> - node lts version, equals :latest</li>
|
|
||||||
<li><strong>:stable</strong> - node stable version</li>
|
|
||||||
<li><strong>:npmci</strong> - npmci preinstalled</li>
|
|
||||||
<li><strong>:npmts</strong> - npmci + npmts preinstalled</li>
|
|
||||||
<li><strong>:npmpage</strong> - npmci + npmts + npmpage preinstalled</li>
|
|
||||||
<li><strong>:mongo</strong> - npmci + npmts + mongo</li>
|
|
||||||
</ul>
|
|
||||||
<p>For further information read the linked docs at the top of this README.</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>MIT licensed | <strong>©</strong> <a href="https://lossless.gmbh">Lossless GmbH</a>
|
|
||||||
| By using this npm module you agree to our <a href="https://lossless.gmbH/privacy.html">privacy policy</a></p>
|
|
||||||
</blockquote>
|
|
||||||
<p><a href="https://host.today"><img src="https://hosttoday.gitlab.io/assets/repo-footer.svg" alt="repo-footer"></a></p>
|
|
||||||
|
|
||||||
<div class='footer'>
|
|
||||||
<div class='footerGridContainer'>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
57
readme.md
57
readme.md
@ -1,18 +1,23 @@
|
|||||||
# ht-docker-node
|
# @hosttoday/ht-docker-node
|
||||||
the ultimate docker node image
|
docker image with nodejs and shipzone.io support
|
||||||
|
|
||||||
## Status
|
## Availabililty and Links
|
||||||
|
* [npmjs.org (npm package)](https://www.npmjs.com/package/@hosttoday/ht-docker-node)
|
||||||
|
* [gitlab.com (source)](https://gitlab.com/hosttoday/ht-docker-node)
|
||||||
|
* [github.com (source mirror)](https://github.com/hosttoday/ht-docker-node)
|
||||||
|
* [docs (typedoc)](https://hosttoday.gitlab.io/ht-docker-node/)
|
||||||
|
|
||||||
|
## Status for master
|
||||||
[](https://gitlab.com/hosttoday/ht-docker-node/commits/master)
|
[](https://gitlab.com/hosttoday/ht-docker-node/commits/master)
|
||||||
|
[](https://gitlab.com/hosttoday/ht-docker-node/commits/master)
|
||||||
[Docs](https://hosttoday.gitlab.io/ht-docker-node/)
|
[](https://www.npmjs.com/package/@hosttoday/ht-docker-node)
|
||||||
|
[](https://snyk.io/test/npm/@hosttoday/ht-docker-node)
|
||||||
## Availability
|
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
|
||||||
Registry | Image Path
|
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
|
||||||
--- | ---
|
[](https://prettier.io/)
|
||||||
GitLab Registry | registry.gitlab.com/hosttoday/ht-docker-node
|
|
||||||
Docker Hub | hosttoday/ht-docker-node
|
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
The purpose of this Docker image is to provide a robust base for node apps and CI.
|
The purpose of this Docker image is to provide a robust base for node apps and CI.
|
||||||
It comes in different flavours and all of them have node, npm, git and ssh in PATH.
|
It comes in different flavours and all of them have node, npm, git and ssh in PATH.
|
||||||
|
|
||||||
@ -23,18 +28,32 @@ FROM hosttoday/ht-docker-node:npmci
|
|||||||
RUN npmci install [node_version_number] // this installs node using node and sets the default to the new node and npm versions
|
RUN npmci install [node_version_number] // this installs node using node and sets the default to the new node and npm versions
|
||||||
```
|
```
|
||||||
|
|
||||||
## Flavour Overview:
|
## Availability
|
||||||
|
|
||||||
* **:lts** - node lts version, equals :latest
|
| Registry | Image Path |
|
||||||
* **:stable** - node stable version
|
| --------------- | -------------------------------------------- |
|
||||||
* **:npmci** - npmci preinstalled
|
| GitLab Registry | registry.gitlab.com/hosttoday/ht-docker-node |
|
||||||
* **:npmts** - npmci + npmts preinstalled
|
| Docker Hub | hosttoday/ht-docker-node |
|
||||||
* **:npmpage** - npmci + npmts + npmpage preinstalled
|
|
||||||
* **:mongo** - npmci + npmts + mongo
|
## Flavour Overview
|
||||||
|
|
||||||
|
- **:lts** - node lts version, equals :latest
|
||||||
|
- **:stable** - node stable version
|
||||||
|
- **:npmci** - npmci preinstalled
|
||||||
|
- **:npmts** - npmci + npmts preinstalled
|
||||||
|
- **:npmpage** - npmci + npmts + npmpage preinstalled
|
||||||
|
- **:mongo** - npmci + npmts + mongo
|
||||||
|
|
||||||
For further information read the linked docs at the top of this README.
|
For further information read the linked docs at the top of this README.
|
||||||
|
|
||||||
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
||||||
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
|
> | By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
|
||||||
|
|
||||||
[](https://host.today)
|
[](https://host.today)
|
||||||
|
|
||||||
|
For further information read the linked docs at the top of this readme.
|
||||||
|
|
||||||
|
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
||||||
|
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy)
|
||||||
|
|
||||||
|
[](https://maintainedby.lossless.com)
|
||||||
|
@ -1,2 +1 @@
|
|||||||
#!/bin/sh
|
echo "this runs within latest container!";
|
||||||
yarn -v
|
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
# check if npmci is available
|
# check if npmci is available
|
||||||
|
npm init -y
|
||||||
npmci -v
|
npmci -v
|
||||||
|
|
||||||
# check if we can use lts
|
# TODO update npmci to not require package.json
|
||||||
npmci install lts
|
npmci node install stable
|
||||||
|
|
||||||
# check if yarn picks it up
|
# check if npm picks it up
|
||||||
npmci command yarn global add npmts
|
npmci command npm install -g @gitzone/tsrun
|
||||||
npmci command npmts -v
|
npmci command tsrun -v
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
# test yarn
|
# npm
|
||||||
yarn global add npmts
|
npm -v
|
||||||
npmts -v
|
node -v
|
||||||
|
npm install -g @gitzone/tsrun
|
||||||
|
# tsrun -v
|
17
tslint.json
Normal file
17
tslint.json
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"extends": ["tslint:latest", "tslint-config-prettier"],
|
||||||
|
"rules": {
|
||||||
|
"semicolon": [true, "always"],
|
||||||
|
"no-console": false,
|
||||||
|
"ordered-imports": false,
|
||||||
|
"object-literal-sort-keys": false,
|
||||||
|
"member-ordering": {
|
||||||
|
"options":{
|
||||||
|
"order": [
|
||||||
|
"static-method"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"defaultSeverity": "warning"
|
||||||
|
}
|
Reference in New Issue
Block a user