mirror of
https://github.com/shlinkio/shlink-web-client.git
synced 2024-12-23 17:40:23 +03:00
Merge pull request #107 from acelaya/feature/improve-docker-image
Feature/improve docker image
This commit is contained in:
commit
7b07445c5d
5 changed files with 23 additions and 26 deletions
|
@ -1,4 +1,5 @@
|
||||||
./build
|
./build
|
||||||
|
./coverage
|
||||||
./dist
|
./dist
|
||||||
./node_modules
|
./node_modules
|
||||||
./test
|
./test
|
||||||
|
|
|
@ -8,13 +8,16 @@ cache:
|
||||||
directories:
|
directories:
|
||||||
- node_modules
|
- node_modules
|
||||||
|
|
||||||
|
services:
|
||||||
|
- docker
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- yarn install
|
- yarn install
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- yarn lint
|
- yarn lint
|
||||||
- yarn test:ci
|
- yarn test:ci
|
||||||
- if [[ -z $TRAVIS_TAG ]]; then yarn build ; fi
|
- if [[ -z $TRAVIS_TAG ]]; then docker build -t shlink-web-client:test . ; fi # Test docker image build only when no tag is present
|
||||||
|
|
||||||
after_success:
|
after_success:
|
||||||
- yarn ocular coverage/clover.xml
|
- yarn ocular coverage/clover.xml
|
||||||
|
|
27
Dockerfile
27
Dockerfile
|
@ -1,21 +1,8 @@
|
||||||
FROM nginx:1.15.8-alpine
|
FROM node:10.15.2 as node
|
||||||
|
COPY . /shlink-web-client
|
||||||
|
RUN cd /shlink-web-client && yarn install && yarn build
|
||||||
|
|
||||||
|
FROM nginx:1.15.9-alpine
|
||||||
LABEL maintainer="Alejandro Celaya <alejandro@alejandrocelaya.com>"
|
LABEL maintainer="Alejandro Celaya <alejandro@alejandrocelaya.com>"
|
||||||
|
RUN rm -r /usr/share/nginx/html
|
||||||
# Install node and yarn
|
COPY --from=node /shlink-web-client/build /usr/share/nginx/html
|
||||||
RUN apk add --no-cache nodejs && apk add --no-cache yarn
|
|
||||||
|
|
||||||
ADD . ./shlink-web-client
|
|
||||||
|
|
||||||
# Install dependencies and build project
|
|
||||||
RUN cd ./shlink-web-client && \
|
|
||||||
yarn install && \
|
|
||||||
yarn build && \
|
|
||||||
|
|
||||||
# Move build contents to document root
|
|
||||||
cd .. && \
|
|
||||||
rm -r /usr/share/nginx/html/* && \
|
|
||||||
mv ./shlink-web-client/build/* /usr/share/nginx/html && \
|
|
||||||
rm -r ./shlink-web-client && \
|
|
||||||
|
|
||||||
# Delete and uninstall build tools
|
|
||||||
yarn cache clean && apk del yarn && apk del nodejs
|
|
||||||
|
|
|
@ -23,6 +23,9 @@
|
||||||
"@fortawesome/free-regular-svg-icons": "^5.6.3",
|
"@fortawesome/free-regular-svg-icons": "^5.6.3",
|
||||||
"@fortawesome/free-solid-svg-icons": "^5.6.3",
|
"@fortawesome/free-solid-svg-icons": "^5.6.3",
|
||||||
"@fortawesome/react-fontawesome": "^0.1.3",
|
"@fortawesome/react-fontawesome": "^0.1.3",
|
||||||
|
"array-filter": "^1.0.0",
|
||||||
|
"array-map": "^0.0.0",
|
||||||
|
"array-reduce": "^0.0.0",
|
||||||
"axios": "^0.18.0",
|
"axios": "^0.18.0",
|
||||||
"bootstrap": "~4.1.1",
|
"bootstrap": "~4.1.1",
|
||||||
"bottlejs": "^1.7.1",
|
"bottlejs": "^1.7.1",
|
||||||
|
|
13
yarn.lock
13
yarn.lock
|
@ -1209,9 +1209,10 @@ array-equal@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93"
|
resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93"
|
||||||
|
|
||||||
array-filter@~0.0.0:
|
array-filter@^1.0.0:
|
||||||
version "0.0.1"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec"
|
resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-1.0.0.tgz#baf79e62e6ef4c2a4c0b831232daffec251f9d83"
|
||||||
|
integrity sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=
|
||||||
|
|
||||||
array-find-index@^1.0.1:
|
array-find-index@^1.0.1:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
|
@ -1236,13 +1237,15 @@ array-includes@^3.0.3:
|
||||||
define-properties "^1.1.2"
|
define-properties "^1.1.2"
|
||||||
es-abstract "^1.7.0"
|
es-abstract "^1.7.0"
|
||||||
|
|
||||||
array-map@~0.0.0:
|
array-map@^0.0.0:
|
||||||
version "0.0.0"
|
version "0.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662"
|
resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662"
|
||||||
|
integrity sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=
|
||||||
|
|
||||||
array-reduce@~0.0.0:
|
array-reduce@^0.0.0:
|
||||||
version "0.0.0"
|
version "0.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b"
|
resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b"
|
||||||
|
integrity sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=
|
||||||
|
|
||||||
array-union@^1.0.1:
|
array-union@^1.0.1:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
|
|
Loading…
Reference in a new issue