add docker suport and pipeline

This commit is contained in:
Evandre Da Silva
2022-06-02 16:11:57 +01:00
parent cde345d696
commit c707e357a3
3 changed files with 56 additions and 94 deletions
+25
View File
@@ -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
View File
@@ -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
View File
@@ -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;"]