FROM node:onbuild EXPOSE 8080
FROM node:alpine WORKDIR /app COPY package.json /app/package.json RUN npm install --production COPY server.js /app/server.js EXPOSE 8080 CMD npm start
FROM golang:onbuild EXPOSE 8080
FROM golang:alpine WORKDIR /app ADD . /app RUN cd /app && go build -o goapp EXPOSE 8080 ENTRYPOINT ./goapp
FROM golang:alpine AS build-env WORKDIR /app ADD . /app RUN cd /app && go build -o goapp FROM alpine RUN apk update && \ apk add ca-certificates && \ update-ca-certificates && \ rm -rf /var/cache/apk/* WORKDIR /app COPY --from=build-env /app/goapp /app EXPOSE 8080 ENTRYPOINT ./goapp
Go Onbuild: 35 Seconds Go Multistage: 23 Seconds
Go Onbuild: 15 Seconds Go Multistage: 14 Seconds
Go Onbuild: 26 Seconds Go Multistage: 6 Seconds
Go Onbuild: 25 Seconds Go Multistage: 20 Seconds
Go Onbuild: 52 seconds Go Multistage: 6 seconds
Go Onbuild: 54 seconds Go Multistage: 28 seconds
Go Onbuild: 48 Seconds Go Multistage: 16 seconds
“Quiero concentrarme en los problemas empresariales. Mi equipo usa servicios administrados, como Cloud SQL de PostgreSQL, de modo que nos podemos concentrar en proporcionar un código de mejor calidad y mejorar nuestro tiempo de comercialización. Si nos tuviésemos que preocupar por los servidores y los sistemas, dedicaríamos mucho más tiempo a tareas de administración importantes, aunque un tanto insignificantes. Como dice nuestro CTO: no queremos instalar las cañerías, queremos construir la casa”.
— Peter McInerney, vicepresidente de Operaciones técnicas, OneMarket
“A veces pienso en el punto en el que nos hallábamos con Westfield Digital en 2008 y 2009. El equipo estaba constantemente en el centro de datos para mantener servidores y administrar discos con fallas. Ahora, el escalamiento es sencillo”.
— Peter McInerney