Compare commits
185 Commits
Author | SHA1 | Date | |
---|---|---|---|
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 | |||
ebc7b3758f | |||
414c51b618 | |||
37681614de | |||
82185516e2 | |||
48bf7e135d | |||
4b0851c8a1 | |||
9c48d3e7ec | |||
7945303e9f | |||
2d11efdcf9 | |||
5100b6b3b1 | |||
a8da4d3fd4 | |||
2fd11c91a0 | |||
46a0413e94 | |||
a0c9a52ec7 | |||
71d9d06ddd | |||
2e23e31bec | |||
82bb2ccc5b | |||
a5f93beea5 | |||
6dd5406573 | |||
22c8f8dbf8 | |||
d8b582a18b | |||
d7fbededbd | |||
afb3bba4ac | |||
20eac2bb4a | |||
92e3f97efe | |||
87081d5bb6 | |||
979f8fcd27 | |||
f827d8c36b | |||
020bca3347 | |||
e295440d11 | |||
a3b5bbc4d4 | |||
da26dc649d | |||
dc7b11c78d | |||
c9b317372f | |||
c7bdbd3901 | |||
e07d31c2af | |||
8ad139ba56 | |||
e7170565f4 | |||
5e89b9a9a7 | |||
5cbf1489bd | |||
a83cc999c4 | |||
ada45c2db7 | |||
db439e3733 | |||
16ba6ab3d3 | |||
00631f769b | |||
d110ef6a47 | |||
3d1161a799 | |||
6e8f7ef602 | |||
b7ba47db18 | |||
d0d3e15922 | |||
9a845b8ec7 | |||
75cc86d69f | |||
9f872eb376 | |||
15165235fd | |||
9e23bf4811 | |||
6bf5730895 | |||
0c733d3a90 | |||
1007880f8c | |||
4ec2503671 | |||
b1814a60d5 | |||
aed0fee59f | |||
fc53a7e3f0 | |||
6ee919ac34 | |||
1b8680edff | |||
67f4456073 | |||
b2835bd220 | |||
a0a2cc2eda | |||
e8c24d504c | |||
866346a0a5 | |||
04ea46f681 | |||
cd858ae9fa | |||
dc28ada99a | |||
09c78e9577 | |||
7525d1af5c | |||
043651bfac | |||
621fff81c3 | |||
b0e8ff164f |
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,46 +1,48 @@
|
||||
image: hosttoday/ht-docker-dbase
|
||||
services:
|
||||
- docker:dind
|
||||
# gitzone ci_docker
|
||||
image: hosttoday/ht-docker-node:npmci
|
||||
|
||||
cache:
|
||||
paths:
|
||||
- .npmci-cache/
|
||||
key: "$CI_BUILD_STAGE"
|
||||
|
||||
before_script:
|
||||
- npmci npm prepare
|
||||
|
||||
stages:
|
||||
- build
|
||||
- test
|
||||
- release
|
||||
- trigger
|
||||
- pages
|
||||
|
||||
before_script:
|
||||
- npm uninstall -g npmci
|
||||
- npm install -g npmci
|
||||
- npmci prepare docker
|
||||
|
||||
|
||||
build:
|
||||
stage: build
|
||||
script:
|
||||
- npmci build docker
|
||||
tags:
|
||||
- lossless
|
||||
- priv
|
||||
|
||||
|
||||
test:
|
||||
testSTABLE:
|
||||
stage: test
|
||||
script:
|
||||
- npmci test docker
|
||||
only:
|
||||
- tags
|
||||
- npmci node install stable
|
||||
- npmci npm install
|
||||
- npmci npm test
|
||||
coverage: /\d+.?\d+?\%\s*coverage/
|
||||
tags:
|
||||
- lossless
|
||||
- priv
|
||||
- docker
|
||||
|
||||
release:
|
||||
image: hosttoday/ht-docker-dbase:npmci
|
||||
services:
|
||||
- docker:dind
|
||||
stage: release
|
||||
script:
|
||||
- npmci publish docker
|
||||
- apk add glib-2.40 gthread-2.0
|
||||
- git clone git://git.qemu.org/qemu.git
|
||||
- (cd qemu && ./configure --target-list=arm-linux-user --static && make && ls -a)
|
||||
- npmci node install stable
|
||||
- npmci docker login
|
||||
- npmci docker build
|
||||
- npmci docker test
|
||||
- npmci docker push registry.gitlab.com
|
||||
only:
|
||||
- tags
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
- priv
|
||||
|
||||
trigger:
|
||||
@ -50,5 +52,4 @@ trigger:
|
||||
only:
|
||||
- tags
|
||||
tags:
|
||||
- lossless
|
||||
- priv
|
||||
- docker
|
||||
|
60
Dockerfile
60
Dockerfile
@ -1,7 +1,9 @@
|
||||
FROM ubuntu:latest
|
||||
FROM ubuntu:xenial
|
||||
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||
|
||||
WORKDIR /workspace
|
||||
# important environment variables
|
||||
ENV NODE_VERSION_LTS="4.4.7" NODE_VERSION_STABLE="6.3.0" NVM_DIR="/usr/local/nvm"
|
||||
ENV NODE_VERSION_LTS="10.13.0" NODE_VERSION_STABLE="11.2.0" NVM_DIR="/usr/local/nvm"
|
||||
|
||||
# Set debconf to run non-interactively and install packages
|
||||
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections \
|
||||
@ -13,21 +15,55 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
|
||||
build-essential \
|
||||
ca-certificates \
|
||||
curl \
|
||||
g++ \
|
||||
gcc \
|
||||
git \
|
||||
ssh \
|
||||
make \
|
||||
openssl \
|
||||
python \
|
||||
rsync \
|
||||
ssh \
|
||||
wget \
|
||||
gconf-service \
|
||||
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 clean \
|
||||
&& rm -r /var/lib/apt/lists/*
|
||||
|
||||
# Install nvm with node and npm
|
||||
RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash \
|
||||
&& bash -c "source $NVM_DIR/nvm.sh \
|
||||
&& nvm install $NODE_VERSION_STABLE \
|
||||
&& nvm alias default $NODE_VERSION_STABLE \
|
||||
&& nvm use default \
|
||||
&& npm install -g npm"
|
||||
|
||||
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION_STABLE/lib/node_modules
|
||||
ENV PATH $NVM_DIR/versions/node/v$NODE_VERSION_STABLE/bin:$PATH
|
||||
RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
|
||||
|
3
Dockerfile_alpine
Normal file
3
Dockerfile_alpine
Normal file
@ -0,0 +1,3 @@
|
||||
FROM node:11.3.0-alpine
|
||||
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||
RUN apk update && apk add bash libc6-compat
|
3
Dockerfile_iot
Normal file
3
Dockerfile_iot
Normal file
@ -0,0 +1,3 @@
|
||||
FROM node:11.3.0-alpine
|
||||
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||
RUN apk update && apk add bash libc6-compat
|
@ -1,9 +1,11 @@
|
||||
FROM hosttoday/ht-docker-node:latest
|
||||
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||
|
||||
RUN bash -c "source $NVM_DIR/nvm.sh \
|
||||
&& nvm install $NODE_VERSION_LTS \
|
||||
&& nvm alias default $NODE_VERSION_LTS \
|
||||
&& nvm use default \
|
||||
&& npm config set unsafe-perm true \
|
||||
&& npm install -g npm"
|
||||
|
||||
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION_LTS/lib/node_modules
|
||||
|
@ -1,2 +1,4 @@
|
||||
FROM hosttoday/ht-docker-node:latest
|
||||
RUN npm install -g npmci
|
||||
FROM hosttoday/ht-docker-node:stable
|
||||
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||
|
||||
RUN npm install -g @shipzone/npmci
|
||||
|
@ -1,2 +0,0 @@
|
||||
FROM hosttoday/ht-docker-node:npmci
|
||||
RUN npm install -g npmdeploy
|
4
Dockerfile_npmdocker
Normal file
4
Dockerfile_npmdocker
Normal file
@ -0,0 +1,4 @@
|
||||
FROM hosttoday/ht-docker-node:stable
|
||||
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||
|
||||
RUN npm install -g @shipzone/npmci @gitzone/tsdocker @gitzone/tsrun
|
@ -1,5 +0,0 @@
|
||||
FROM hosttoday/ht-docker-node:npmts
|
||||
RUN npmci install stable && npmci command npm install -g npmpage && npmci command npmpage -v \
|
||||
&& npmci install legacy && npmci command npm install -g npmpage && npmci command npmpage -v \
|
||||
&& npmci install lts && npmci command npm install -g npmpage && npmci command npmpage -v \
|
||||
&& npmci clean
|
@ -1,5 +0,0 @@
|
||||
FROM hosttoday/ht-docker-node:npmci
|
||||
RUN npmci install stable && npmci command npm install -g npm npmts && npmci command npmts -v \
|
||||
&& npmci install legacy && npmci command npm install -g npm npmts && npmci command npmts -v \
|
||||
&& npmci install lts && npmci command npm install -g npm npmts && npmci command npmts -v \
|
||||
&& npmci clean
|
@ -1,13 +0,0 @@
|
||||
FROM hosttoday/ht-docker-node:latest
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y -q --no-install-recommends \
|
||||
python3 \
|
||||
&& apt-get clean \
|
||||
&& rm -r /var/lib/apt/lists/*
|
||||
|
||||
# Install pip and symlink python to python3
|
||||
RUN curl -O https://bootstrap.pypa.io/get-pip.py \
|
||||
&& python3 get-pip.py \
|
||||
&& rm get-pip.py \
|
||||
&& rm -r /usr/bin/python \
|
||||
&& ln -s /usr/bin/python3 /usr/bin/python
|
@ -1 +1,12 @@
|
||||
FROM hosttoday/ht-docker-node:latest
|
||||
LABEL author="Lossless GmbH <hello@lossless.com>"
|
||||
|
||||
RUN bash -c "source $NVM_DIR/nvm.sh \
|
||||
&& nvm install $NODE_VERSION_STABLE \
|
||||
&& nvm alias default $NODE_VERSION_STABLE \
|
||||
&& nvm use default \
|
||||
&& npm config set unsafe-perm true \
|
||||
&& npm install -g npm"
|
||||
|
||||
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION_STABLE/lib/node_modules
|
||||
ENV PATH $NVM_DIR/versions/node/v$NODE_VERSION_STABLE/bin:$PATH
|
||||
|
30
README.md
30
README.md
@ -1,30 +0,0 @@
|
||||
# ht-docker-node
|
||||
|
||||
This image is available on DockerHub. Specify it as base image like so:
|
||||
|
||||
```Dockerfile
|
||||
FROM hosttoday/ht-docker-node
|
||||
```
|
||||
|
||||
## Status
|
||||
[](https://gitlab.com/hosttoday/ht-docker-node/commits/master)
|
||||
|
||||
## 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
|
||||
* **:npmts** - npmci + npmts preinstalled
|
||||
* **:npmpage** - npmci + npmts + npmpage preinstalled
|
||||
* **:python3** - like :latest, but with python3 as standard python version
|
13
npmextra.json
Normal file
13
npmextra.json
Normal file
@ -0,0 +1,13 @@
|
||||
{
|
||||
"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": {}
|
||||
}
|
23
package.json
23
package.json
@ -1,10 +1,11 @@
|
||||
{
|
||||
"name": "ht-docker-node",
|
||||
"version": "4.3.3",
|
||||
"description": "docker image with nodejs with shipzone.io support",
|
||||
"version": "5.0.17",
|
||||
"description": "docker image with nodejs and shipzone.io support",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
"test": "echo \"no npm test specified\"",
|
||||
"build": "echo \"Not needed for now\""
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -15,5 +16,19 @@
|
||||
"bugs": {
|
||||
"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/*",
|
||||
"assets/*",
|
||||
"cli.js",
|
||||
"npmextra.json",
|
||||
"readme.md"
|
||||
],
|
||||
"directories": {
|
||||
"test": "test"
|
||||
}
|
||||
}
|
||||
|
59
readme.md
Normal file
59
readme.md
Normal file
@ -0,0 +1,59 @@
|
||||
# @hosttoday/ht-docker-node
|
||||
docker image with nodejs and shipzone.io support
|
||||
|
||||
## 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://www.npmjs.com/package/@hosttoday/ht-docker-node)
|
||||
[](https://snyk.io/test/npm/@hosttoday/ht-docker-node)
|
||||
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
|
||||
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
|
||||
[](https://prettier.io/)
|
||||
|
||||
## 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
|
||||
```
|
||||
|
||||
## Availability
|
||||
|
||||
| Registry | Image Path |
|
||||
| --------------- | -------------------------------------------- |
|
||||
| GitLab Registry | registry.gitlab.com/hosttoday/ht-docker-node |
|
||||
| Docker Hub | hosttoday/ht-docker-node |
|
||||
|
||||
## 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.
|
||||
|
||||
> 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)
|
||||
|
||||
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://maintainedby.lossless.com)
|
@ -1,3 +1 @@
|
||||
#!/bin/sh
|
||||
npm -v
|
||||
node -v
|
||||
echo "this runs within latest container!";
|
||||
|
@ -1 +1,9 @@
|
||||
# check if npmci is available
|
||||
npmci -v
|
||||
|
||||
# check if we can use lts
|
||||
npmci install lts
|
||||
|
||||
# check if npm picks it up
|
||||
npmci command npm install -g @gitzone/tsrun
|
||||
npmci command tsrun -v
|
||||
|
@ -1,6 +0,0 @@
|
||||
npmci install stable
|
||||
npmci command npmts -v
|
||||
npmci install lts
|
||||
npmci command npmts -v
|
||||
npmci install legacy
|
||||
npmci command npmts -v
|
5
test/test_stable.sh
Normal file
5
test/test_stable.sh
Normal file
@ -0,0 +1,5 @@
|
||||
# npm
|
||||
npm -v
|
||||
node -v
|
||||
npm install -g @gitzone/tsrun
|
||||
gitzone -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