# This image is based on the fat node 11 image. # We require fat images as neither alpine, or slim, include git binaries. FROM node:11 # Port 8100 for ionic dev server. EXPOSE 8100 # Port 35729 is the live-reload server. EXPOSE 35729 # Port 53703 is the Chrome dev logger port. EXPOSE 53703 # MoodleMobile uses Cordova, Ionic, and Gulp. RUN npm install -g cordova ionic gulp && rm -rf /root/.npm WORKDIR /app COPY . /app # The setup script will handle npm installation, cordova setup, and gulp setup. RUN npm run setup && rm -rf /root/.npm # Provide a Healthcheck command for easier use in CI. HEALTHCHECK --interval=10s --timeout=3s --start-period=30s CMD curl -f http://localhost:8100 || exit 1 CMD ["ionic", "serve", "-b"]