Compare commits

...

167 Commits

Author SHA1 Message Date
eca7a18409 5.0.52 2019-10-04 15:24:18 +02:00
1e620394ac 5.0.51 2019-10-02 23:56:42 +02:00
39b3d5df91 5.0.50 2019-10-02 23:40:21 +02:00
2b0cceb822 5.0.49 2019-10-02 12:09:42 +02:00
e25fb766d0 fix(core): update 2019-10-02 12:09:42 +02:00
83f47a5d33 5.0.48 2019-10-02 12:02:42 +02:00
c9b0009cd3 5.0.47 2019-10-02 11:40:10 +02:00
3e58b1c7c6 5.0.46 2019-09-19 19:34:28 +02:00
08515255bb fix(core): update 2019-09-19 19:34:27 +02:00
4cfd049e0c 5.0.45 2019-09-19 17:39:42 +02:00
0472feeaeb fix(core): update 2019-09-19 17:39:42 +02:00
d8b1f5cf83 5.0.44 2019-09-19 16:13:08 +02:00
bc05ac5ce8 fix(core): update 2019-09-19 16:13:08 +02:00
5e58389bbe 5.0.43 2019-09-19 16:11:44 +02:00
2cef721039 fix(core): update 2019-09-19 16:11:44 +02:00
1e5677e7b3 5.0.42 2019-09-01 15:15:56 +02:00
a16aa527e0 5.0.41 2019-09-01 13:59:24 +02:00
8a3ebe4edd 5.0.40 2019-08-31 16:32:16 +02:00
3754370601 fix(core): update 2019-08-31 16:32:16 +02:00
98e9bb7ccd 5.0.39 2019-08-31 16:30:43 +02:00
d15e063c92 fix(core): update 2019-08-31 16:30:43 +02:00
be3ae65d72 5.0.38 2019-08-31 16:21:57 +02:00
b75e5ef366 fix(core): update 2019-08-31 16:21:57 +02:00
fd35505647 5.0.37 2019-08-31 16:20:57 +02:00
c77d2bf370 fix(core): update 2019-08-31 16:20:56 +02:00
28439a4b57 5.0.36 2019-08-31 14:24:53 +02:00
7d68fdf34e 5.0.35 2019-08-27 19:44:57 +02:00
8a0beb0748 fix(core): update 2019-08-27 19:44:57 +02:00
54440f3d87 5.0.34 2019-08-27 19:42:48 +02:00
c3690d0ad0 fix(core): update 2019-08-27 19:42:47 +02:00
469b9cda79 5.0.33 2019-08-23 17:25:47 +02:00
274939af46 fix(core): update 2019-08-23 17:25:47 +02:00
edd645a222 5.0.32 2019-08-23 17:10:07 +02:00
bf3972cf55 fix(core): update 2019-08-23 17:10:07 +02:00
3b581d1e11 5.0.31 2019-07-18 17:18:41 +02:00
d4f83ecdda 5.0.30 2019-07-17 18:01:57 +02:00
b369197763 fix(core): update 2019-07-17 18:01:57 +02:00
52cde0c4d9 5.0.29 2019-07-17 17:19:43 +02:00
e118fab8c6 fix(core): update 2019-07-17 17:19:43 +02:00
b6fe7e1b36 5.0.28 2019-06-19 13:26:45 +02:00
9b264755ab fix(core): update 2019-06-19 13:26:44 +02:00
11d6f9a1ec 5.0.27 2019-06-19 12:03:19 +02:00
fecbcdde64 fix(core): update 2019-06-19 12:03:19 +02:00
9e1d21931e 5.0.26 2019-06-19 11:15:19 +02:00
81ef1f1fd9 fix(core): update 2019-06-19 11:15:19 +02:00
9fa5bee1ee 5.0.25 2019-06-19 11:04:44 +02:00
36099654b4 fix(core): update 2019-06-19 11:04:44 +02:00
99bb05ee51 5.0.24 2019-06-18 17:26:52 +02:00
a020d12a2e fix(core): update 2019-06-18 17:26:51 +02:00
f393560c78 5.0.23 2019-06-18 17:25:34 +02:00
258de44568 fix(core): update 2019-06-18 17:25:34 +02:00
02b846642e 5.0.22 2019-06-10 11:37:24 +02:00
7f05f5da84 fix(core): update 2019-06-10 11:37:24 +02:00
a818bf8aeb 5.0.21 2019-06-10 11:35:56 +02:00
d182b93d65 fix(core): update 2019-06-10 11:35:56 +02:00
875da4bc76 5.0.20 2019-06-10 11:31:48 +02:00
3b2729f9bf fix(core): update 2019-06-10 11:31:47 +02:00
d309093c77 5.0.19 2019-06-10 11:05:43 +02:00
78544b9c7a fix(core): update 2019-06-10 11:05:42 +02:00
0b80f1b2ac 5.0.18 2019-06-10 10:58:01 +02:00
094fa46f80 fix(core): update 2019-06-10 10:58:01 +02:00
7c8e796611 5.0.17 2019-06-10 10:56:41 +02:00
30188f8aeb 5.0.16 2019-06-10 10:51:20 +02:00
f829160720 fix(core): update 2019-06-10 10:51:19 +02:00
755ddd2d77 5.0.15 2019-06-10 10:43:23 +02:00
9fbcb625d3 fix(core): update 2019-06-10 10:43:22 +02:00
5ef828500b 5.0.14 2019-06-08 21:36:23 +02:00
a763bc61a0 fix(core): update 2019-06-08 21:36:23 +02:00
860d5c722e 5.0.13 2019-06-03 13:15:48 +02:00
b370777bd4 fix(core): update 2019-06-03 13:15:48 +02:00
4f280ebd13 5.0.12 2019-05-29 20:04:06 +02:00
4e10028f65 fix(core): update 2019-05-29 20:04:06 +02:00
bb44e89699 5.0.11 2019-05-08 23:17:11 +02:00
2ad5215865 fix(core): update 2019-05-08 23:17:11 +02:00
e60bf4dae8 5.0.10 2019-05-08 22:27:59 +02:00
d44f8d7959 fix(core): update 2019-05-08 22:27:59 +02:00
33cad48fed 5.0.9 2018-12-24 01:53:51 +01:00
79e0128d30 fix(core): update 2018-12-24 01:53:51 +01:00
24531b63b0 5.0.8 2018-12-01 15:36:33 +01:00
a7d2b34f8b 5.0.7 2018-11-29 11:06:53 +01:00
1089942cc3 fix(core): update 2018-11-29 11:06:53 +01:00
f443d220c6 5.0.6 2018-11-29 10:57:30 +01:00
52866e8aa5 fix(tests): remove npmts from tests 2018-11-29 10:57:30 +01:00
50cb638732 5.0.5 2018-11-29 10:49:50 +01:00
67470d22f4 fix(core): update 2018-11-29 10:49:50 +01:00
5a3f5a1a72 5.0.4 2018-11-29 08:03:22 +01:00
3cdcc3738b fix(core): update 2018-11-29 08:03:21 +01:00
d2c8e2b51e 5.0.3 2018-11-28 23:31:14 +01:00
b69c781c4d fix(core): update 2018-11-28 23:31:14 +01:00
7bc8cb3f51 5.0.2 2018-11-28 22:37:04 +01:00
1ce4382885 fix(core): update 2018-11-28 22:37:03 +01:00
e9ff80ceae 5.0.1 2018-11-26 20:36:04 +01:00
32ceafbd59 fix(node versions): update 2018-11-26 20:36:03 +01:00
1acbe775fc 5.0.0 2018-07-16 00:16:12 +02:00
98f9724739 4.3.69 2018-07-16 00:15:36 +02:00
a93ee5a185 4.3.68 2018-07-02 23:02:51 +02:00
90bae2fce4 fix(core): update node versions 2018-07-02 23:02:51 +02:00
ae30ceec26 4.3.67 2018-05-27 13:33:19 +02:00
f1426931fa fix(tests): fis test that did not make sense 2018-05-27 13:33:19 +02:00
097a741488 4.3.66 2018-05-27 13:21:50 +02:00
9d62eab807 fix(dependencies): update to scoped versions of npmci and npmdocker 2018-05-27 13:21:49 +02:00
baeb46ed81 4.3.65 2018-05-27 13:18:51 +02:00
ddd4970762 remove yarn 2018-05-27 13:18:17 +02:00
04659b9344 4.3.64 2018-05-16 18:05:56 +02:00
0ad9c4fcd3 fix(core): add default workspace directory 2018-05-16 18:05:55 +02:00
43063e3507 4.3.63 2018-05-16 01:37:59 +02:00
02ea32961b fix(core): cleanup 2018-05-16 01:37:59 +02:00
c5365798b6 4.3.62 2018-05-16 01:31:41 +02:00
184e13b91e fix(:chrome): update 2018-05-16 01:31:40 +02:00
a1f5bbb6f0 4.3.61 2018-05-16 01:08:52 +02:00
21189adb66 fix(:chrome): fix 2018-05-16 01:08:52 +02:00
4bd28a3a54 4.3.60 2018-05-16 01:00:22 +02:00
b48aa0e077 fix(:chrome): docker tag :chrome is now working with sandboxing 2018-05-16 01:00:21 +02:00
95f4b0b8e4 4.3.59 2018-04-29 17:17:44 +02:00
bb1db7e9a8 remove npmpage 2018-04-29 17:17:40 +02:00
12a9413444 4.3.58 2018-04-29 17:05:05 +02:00
69d937edb0 update to latest standards 2018-04-29 17:04:56 +02:00
4953e7b345 4.3.57 2018-04-10 13:47:24 +02:00
c04e941274 update ci 2018-04-10 13:47:18 +02:00
dfadb7e1f2 4.3.56 2018-04-10 13:45:01 +02:00
1932695c81 add verify step 2018-04-10 13:44:54 +02:00
8f914cbf47 4.3.55 2018-04-09 18:47:33 +02:00
7b390fd1da update ci to put less strain on network 2018-04-09 18:47:28 +02:00
0eb7a24dcd 4.3.54 2018-04-09 17:33:02 +02:00
fe2452111e update 2018-04-09 17:32:52 +02:00
84930b7c3e 4.3.53 2018-01-31 19:27:26 +01:00
cb99fd28d0 remove obsolete 2018-01-31 19:27:07 +01:00
4f557b6a08 slim down the base image 2018-01-31 19:23:52 +01:00
ee1f86e7ab 4.3.52 2018-01-31 00:29:38 +01:00
8a3b598f66 fix(Dockerfile) remove apt lists from layer 2018-01-31 00:29:36 +01:00
4ebce929f8 4.3.51 2017-12-20 23:30:30 +01:00
244ada778b update docker 2017-12-20 23:30:19 +01:00
b85de4bd9b 4.3.50 2017-12-20 17:33:35 +01:00
3762558b58 add puppeteer compatibility 2017-12-20 17:33:28 +01:00
c2bb8b18fd 4.3.49 2017-12-15 17:55:08 +01:00
f147ef9b46 update nvm 2017-12-15 17:55:01 +01:00
4b4e1bedcc 4.3.48 2017-12-15 17:19:02 +01:00
87bb2843f5 update node versions 2017-12-15 17:18:58 +01:00
0f541d3101 4.3.47 2017-10-13 16:44:01 +02:00
7aa6864a74 update images 2017-10-13 16:43:58 +02:00
138e25843d 4.3.46 2017-10-13 16:00:16 +02:00
40d0d6b73e update :npmdocker 2017-10-13 16:00:12 +02:00
9a7949ea87 4.3.45 2017-10-13 15:50:30 +02:00
ef46145028 update :npmci and :npmdocker 2017-10-13 15:50:26 +02:00
0b5ff58b7b 4.3.44 2017-10-11 18:26:46 +02:00
2756a4cf4e 4.3.43 2017-10-11 18:16:16 +02:00
e4dce5cbc1 buildAndTest not for triggers 2017-10-11 18:16:11 +02:00
6b07d92d12 4.3.42 2017-10-11 17:35:32 +02:00
ae04ea4a41 fix npmpage 2017-10-11 17:35:28 +02:00
2abed13111 4.3.41 2017-10-11 17:29:46 +02:00
14da195a62 update Dockerfile_npmpage 2017-10-11 17:29:44 +02:00
bbe957a694 update tests 2017-10-11 17:28:32 +02:00
963ca3e5ff update cosmetics 2017-10-11 17:22:55 +02:00
108ec46426 4.3.40 2017-10-11 17:22:21 +02:00
33ebe443bb add npmpage 2017-10-11 17:22:17 +02:00
90b2c7d5f3 4.3.39 2017-10-09 20:55:09 +02:00
d16ad9bf61 update mongo 2017-10-09 20:55:06 +02:00
dd82475256 4.3.38 2017-10-09 20:40:01 +02:00
239bf6174d update base image 2017-10-09 20:39:55 +02:00
0ae1d77cb2 4.3.37 2017-10-09 20:23:24 +02:00
decc90e211 update mongo 2017-10-09 20:23:20 +02:00
ae10a9eb98 4.3.36 2017-10-09 19:17:32 +02:00
ba780fd445 update mongo image 2017-10-09 19:17:28 +02:00
27e5fc58e9 4.3.35 2017-09-14 18:58:51 +02:00
db0ed5024d remove obsolete images 2017-09-14 18:58:41 +02:00
3da93c3cad 4.3.34 2017-09-14 18:15:52 +02:00
66ba2a6641 fix tag npmcidocker 2017-09-14 18:15:48 +02:00
25 changed files with 229 additions and 605 deletions

23
.gitignore vendored
View File

@ -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

View File

@ -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:
stages: paths:
- buildAndTest - .npmci-cache/
- build key: "$CI_BUILD_STAGE"
- test
- release
- trigger
- pages
before_script: before_script:
- yarn global add npmci - npmci npm prepare
- npmci docker login
buildAndTest: stages:
stage: buildAndTest - test
script: - release
- npmci docker build - trigger
- npmci docker test - pages
except:
- tags
tags:
- lossless
- priv
build: testStable:
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

View File

@ -1,8 +1,9 @@
FROM ubuntu:latest FROM ubuntu:xenial
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="10.16.3" NODE_VERSION_STABLE="12.8.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 \
@ -23,12 +24,46 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
rsync \ rsync \
ssh \ ssh \
wget \ wget \
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ gconf-service \
&& echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ libasound2 \
libatk1.0-0 \
libatk-bridge2.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 \
fonts-liberation \
libappindicator1 \
libnss3 \
lsb-release \
xdg-utils \
&& apt-get update \ && apt-get update \
&& apt-get install yarn -y \
&& 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

4
Dockerfile_alpine Normal file
View File

@ -0,0 +1,4 @@
FROM node:12.8.1-alpine
LABEL author="Lossless GmbH <hello@lossless.com>"
RUN apk update && apk add bash libc6-compat
ENV NODE_OPTIONS="--max_old_space_size=1000"

12
Dockerfile_iot Normal file
View File

@ -0,0 +1,12 @@
FROM hosttoday/ht-docker-node:latest 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

View File

@ -1,5 +1,5 @@
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 \

View File

@ -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

View File

@ -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

View File

@ -1,2 +0,0 @@
FROM hosttoday/ht-docker-node:stable
RUN curl -sSL https://get.docker.com/ | sh

View File

@ -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

View File

@ -1,3 +0,0 @@
FROM hosttoday/ht-docker-node:npmcidocker
RUN bash -c "$(curl -fsSL https://s3.amazonaws.com/tools.nanobox.io/bootstrap/ci.sh)"
RUN nanobox config set ci-mode true

View File

@ -1,4 +1,5 @@
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 \

4
Dockerfile_tsdocker Normal file
View 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

View File

@ -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

View File

@ -1,48 +0,0 @@
---
name: ht-docker-node
description: the ultimate docker-node image
---
# ht-docker-node
the ultimate docker node image
## Status
[![build status](https://gitlab.com/hosttoday/ht-docker-node/badges/master/build.svg)](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 | **&copy;** [Lossless GmbH](https://lossless.gmbh)
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
[![repo-footer](https://hosttoday.gitlab.io/assets/repo-footer.svg)](https://host.today)

1
node_modules/.yarn-integrity generated vendored
View File

@ -1 +0,0 @@
549854b8a60607db81d4c58008d59f812d744acba026266f380acd942941356a

18
npmextra.json Normal file
View 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
View File

@ -0,0 +1,5 @@
{
"name": "ht-docker-node",
"version": "5.0.52",
"lockfileVersion": 1
}

View File

@ -1,10 +1,11 @@
{ {
"name": "ht-docker-node", "name": "ht-docker-node",
"version": "4.3.33", "version": "5.0.52",
"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"
}
} }

View File

@ -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>&copy;</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>

View File

@ -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
[![build status](https://gitlab.com/hosttoday/ht-docker-node/badges/master/build.svg)](https://gitlab.com/hosttoday/ht-docker-node/commits/master) [![build status](https://gitlab.com/hosttoday/ht-docker-node/badges/master/build.svg)](https://gitlab.com/hosttoday/ht-docker-node/commits/master)
[![coverage report](https://gitlab.com/hosttoday/ht-docker-node/badges/master/coverage.svg)](https://gitlab.com/hosttoday/ht-docker-node/commits/master)
[Docs](https://hosttoday.gitlab.io/ht-docker-node/) [![npm downloads per month](https://img.shields.io/npm/dm/@hosttoday/ht-docker-node.svg)](https://www.npmjs.com/package/@hosttoday/ht-docker-node)
[![Known Vulnerabilities](https://snyk.io/test/npm/@hosttoday/ht-docker-node/badge.svg)](https://snyk.io/test/npm/@hosttoday/ht-docker-node)
## Availability [![TypeScript](https://img.shields.io/badge/TypeScript->=%203.x-blue.svg)](https://nodejs.org/dist/latest-v10.x/docs/api/)
Registry | Image Path [![node](https://img.shields.io/badge/node->=%2010.x.x-blue.svg)](https://nodejs.org/dist/latest-v10.x/docs/api/)
--- | --- [![JavaScript Style Guide](https://img.shields.io/badge/code%20style-prettier-ff69b4.svg)](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 | **&copy;** [Lossless GmbH](https://lossless.gmbh) > MIT licensed | **&copy;** [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)
[![repo-footer](https://hosttoday.gitlab.io/assets/repo-footer.svg)](https://host.today) [![repo-footer](https://hosttoday.gitlab.io/assets/repo-footer.svg)](https://host.today)
For further information read the linked docs at the top of this readme.
> MIT licensed | **&copy;** [Lossless GmbH](https://lossless.gmbh)
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy)
[![repo-footer](https://lossless.gitlab.io/publicrelations/repofooter.svg)](https://maintainedby.lossless.com)

View File

@ -1,2 +1 @@
#!/bin/sh echo "this runs within latest container!";
yarn -v

View File

@ -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

View File

@ -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
View 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"
}