28 lines
735 B
Docker
28 lines
735 B
Docker
|
# 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"]
|