mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 20:47:54 +00:00
add docker suport and pipeline
This commit is contained in:
@@ -0,0 +1,25 @@
|
|||||||
|
**/.classpath
|
||||||
|
**/.dockerignore
|
||||||
|
**/.env
|
||||||
|
**/.git
|
||||||
|
**/.gitignore
|
||||||
|
**/.project
|
||||||
|
**/.settings
|
||||||
|
**/.toolstarget
|
||||||
|
**/.vs
|
||||||
|
**/.vscode
|
||||||
|
**/*.*proj.user
|
||||||
|
**/*.dbmdl
|
||||||
|
**/*.jfm
|
||||||
|
**/azds.yaml
|
||||||
|
**/bin
|
||||||
|
**/charts
|
||||||
|
**/docker-compose*
|
||||||
|
**/Dockerfile*
|
||||||
|
**/node_modules
|
||||||
|
**/npm-debug.log
|
||||||
|
**/www
|
||||||
|
**/secrets.dev.yaml
|
||||||
|
**/values.dev.yaml
|
||||||
|
LICENSE
|
||||||
|
README.md
|
||||||
+18
-26
@@ -1,31 +1,23 @@
|
|||||||
image: node:14.15.0
|
|
||||||
|
|
||||||
pipelines:
|
pipelines:
|
||||||
branches:
|
branches:
|
||||||
'{master,test}':
|
developer:
|
||||||
# - step:
|
|
||||||
# caches:
|
|
||||||
# - node
|
|
||||||
# script:
|
|
||||||
# - apt-get update; apt-get install -y gettext-base;
|
|
||||||
# - echo 'deb http://dl.google.com/linux/chrome/deb/ stable main' > /etc/apt/sources.list.d/chrome.list
|
|
||||||
# - wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
|
|
||||||
# - set -x && apt-get update && apt-get install -y xvfb google-chrome-stable
|
|
||||||
# - wget -q -O /usr/bin/xvfb-chrome https://bitbucket.org/atlassian/docker-node-chrome-firefox/raw/ff180e2f16ea8639d4ca4a3abb0017ee23c2836c/scripts/xvfb-chrome
|
|
||||||
# - ln -sf /usr/bin/xvfb-chrome /usr/bin/google-chrome
|
|
||||||
# - chmod 755 /usr/bin/google-chrome
|
|
||||||
# - npm ci
|
|
||||||
# - npm install
|
|
||||||
# - ./node_modules/@angular/cli/bin/ng -v
|
|
||||||
# - npm run test
|
|
||||||
|
|
||||||
- step:
|
- step:
|
||||||
caches:
|
name: 'Build Images and push to Docker hub'
|
||||||
- node
|
|
||||||
script:
|
script:
|
||||||
- apt-get update;
|
- export BITBUCKET_COMMIT_SHORT=$(echo $BITBUCKET_COMMIT| cut -c1-7)
|
||||||
- npm ci
|
- export IMAGE_NAME=gabinetedigital/gdsite:$BITBUCKET_COMMIT_SHORT
|
||||||
- npm install
|
- docker build -t $IMAGE_NAME -f .
|
||||||
- ./node_modules/@angular/cli/bin/ng -v
|
- docker login --username $DOCKER_USER --password $DOCKER_PASS
|
||||||
- npm run build --prod
|
- docker push $IMAGE_NAME
|
||||||
|
- step:
|
||||||
|
name: 'Deploy on server'
|
||||||
|
script:
|
||||||
|
- export BITBUCKET_COMMIT_SHORT=$(echo $BITBUCKET_COMMIT| cut -c1-7)
|
||||||
|
- pipe: atlassian/ssh-run:0.4.0
|
||||||
|
variables:
|
||||||
|
SSH_USER: 'administrator'
|
||||||
|
SERVER: '41.63.166.54'
|
||||||
|
COMMAND: 'export GDOS_VERSION=${BITBUCKET_COMMIT_SHORT};cd ${COMPOSE_FOLDER} ; docker-compose up -d gdsite'
|
||||||
|
|
||||||
|
options:
|
||||||
|
docker: true
|
||||||
+11
-66
@@ -1,68 +1,13 @@
|
|||||||
# # Stage 1: Compile and Build angular codebase
|
FROM node:14 as build
|
||||||
|
WORKDIR /app
|
||||||
|
COPY ./package*.json /app/
|
||||||
|
|
||||||
# # Use official node image as the base image
|
|
||||||
|
|
||||||
FROM node:14.15.0 as build
|
|
||||||
|
|
||||||
# # Set up ENV
|
|
||||||
|
|
||||||
ENV NODE_ENV=production
|
|
||||||
|
|
||||||
# Set the working directory
|
|
||||||
|
|
||||||
WORKDIR /usr/local/app
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# # Install all the dependencies
|
|
||||||
|
|
||||||
RUN npm config set unsafe-perm true
|
RUN npm config set unsafe-perm true
|
||||||
|
RUN npm install -g ionic
|
||||||
|
RUN npm config set legacy-peer-deps true
|
||||||
|
RUN npm install --save --legacy-peer-deps
|
||||||
|
COPY ./ /app/
|
||||||
|
RUN ionic build
|
||||||
|
|
||||||
RUN npm ci
|
FROM nginx:alpine
|
||||||
|
RUN rm -rf /usr/share/nginx/html/*
|
||||||
RUN npm audit fix
|
COPY --from=build /app/www/ /usr/share/nginx/html/
|
||||||
|
|
||||||
RUN npm install -g @ionic/cli
|
|
||||||
|
|
||||||
RUN npm install -g @angular/cli
|
|
||||||
|
|
||||||
RUN npm install -g cordova
|
|
||||||
|
|
||||||
RUN npm install -g cordova-res
|
|
||||||
|
|
||||||
# # # Generate the build of the application
|
|
||||||
|
|
||||||
RUN ionic build --prod
|
|
||||||
|
|
||||||
# # Add the source code to app
|
|
||||||
|
|
||||||
COPY ./www /usr/local/app/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# # Stage 2: Serve app with nginx server
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# # Use official nginx image as the base image
|
|
||||||
|
|
||||||
# FROM nginx:latest
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Copy the build output to replace the default nginx contents.
|
|
||||||
|
|
||||||
#COPY ./www/ /usr/share/nginx/html/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Expose port 80
|
|
||||||
|
|
||||||
# EXPOSE 80
|
|
||||||
|
|
||||||
#CMD ["nginx", "-g", "daemon off;"]
|
|
||||||
Reference in New Issue
Block a user