Skip to content

Instantly share code, notes, and snippets.

@mesaglio
Last active March 6, 2020 15:15
Show Gist options
  • Save mesaglio/a21dcc12d4890e7833b3a2e23ffbe693 to your computer and use it in GitHub Desktop.
Save mesaglio/a21dcc12d4890e7833b3a2e23ffbe693 to your computer and use it in GitHub Desktop.
Dockerfiles examples

Simple node app

FROM node:10.15.3
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["node", "index.js"]

Angular con nginx (dev)

FROM node:10.15.3
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json /app/package.json
RUN npm install
COPY . /app
# CMD ng serve --configuration=production --host 0.0.0.0
CMD ng serve --host 0.0.0.0

Angular con nginx (prod)

FROM node:10.15.3 as build
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json /app/package.json
RUN npm install
RUN npm install -g @angular/[email protected]
COPY . /app
RUN ng build --prod --output-path=dist

FROM nginx:alpine
COPY --from=build /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

Java Spring Boot

FROM maven:3.6.2-jdk-8 AS MAVEN_BUILD
COPY pom.xml /build/
# ADD  http://nginxhost:81/settings.xml /usr/share/maven/ref/ (custom settings)
COPY src /build/src/
WORKDIR /build/
RUN mvn package -s /usr/share/maven/ref/settings.xml

FROM openjdk:8-jre-alpine
WORKDIR /app
COPY --from=MAVEN_BUILD /build/target/backoffice-0.0.1-SNAPSHOT.jar /app/
ENTRYPOINT ["java", "-jar", "backoffice-0.0.1-SNAPSHOT.jar"]

Oracle java X image (descargar el .tar.gz)

_# ejemplo con java_80
FROM ubuntu
COPY jdk-7u80-linux-x64.tar.gz .
RUN mkdir /usr/lib/jvm && mv jdk-7u80-linux-x64.tar.gz /usr/lib/jvm
WORKDIR  /usr/lib/jvm
RUN tar -xvzf jdk-7u80-linux-x64.tar.gz
RUN update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_80/bin/java" 0
RUN update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_80/bin/javac" 0
RUN update-alternatives --set java /usr/lib/jvm/jdk1.7.0_80/bin/java
RUN update-alternatives --set javac /usr/lib/jvm/jdk1.7.0_80/bin/javac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment