diff options
| author | bndw <benjamindwoodward@gmail.com> | 2020-06-08 20:33:12 -0700 |
|---|---|---|
| committer | bndw <benjamindwoodward@gmail.com> | 2020-06-08 20:33:12 -0700 |
| commit | a37a38c5367e480f6c27f0a8d7a415f5ed3ae99d (patch) | |
| tree | b7aedbda7f2235f6a079f5321fa7e21dfec0b8a5 | |
| parent | 25a045e4e0b7f6ab166d2c1936361fe77892295f (diff) | |
:construction_worker: CI: Multi-stage build
| -rw-r--r-- | Dockerfile | 11 | ||||
| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | README.md | 10 |
3 files changed, 19 insertions, 6 deletions
| @@ -1,2 +1,11 @@ | |||
| 1 | FROM mhart/alpine-node:14 as builder | ||
| 2 | |||
| 3 | WORKDIR /tmp | ||
| 4 | COPY . . | ||
| 5 | |||
| 6 | RUN yarn && yarn build | ||
| 7 | |||
| 8 | ### | ||
| 9 | # production image | ||
| 1 | FROM nginx:stable-alpine | 10 | FROM nginx:stable-alpine |
| 2 | COPY build /usr/share/nginx/html | 11 | COPY --from=builder /tmp/build /usr/share/nginx/html |
| @@ -7,8 +7,6 @@ all: dev | |||
| 7 | 7 | ||
| 8 | .PHONY: build | 8 | .PHONY: build |
| 9 | build: | 9 | build: |
| 10 | yarn | ||
| 11 | yarn build | ||
| 12 | docker build -t $(TAG_LATEST) . | 10 | docker build -t $(TAG_LATEST) . |
| 13 | 11 | ||
| 14 | .PHONY: dev | 12 | .PHONY: dev |
| @@ -17,7 +15,7 @@ dev: | |||
| 17 | yarn start | 15 | yarn start |
| 18 | 16 | ||
| 19 | .PHONY: run | 17 | .PHONY: run |
| 20 | run: build | 18 | run: |
| 21 | docker run --rm -p 8080:80 $(TAG_LATEST) | 19 | docker run --rm -p 8080:80 $(TAG_LATEST) |
| 22 | 20 | ||
| 23 | .PHONY: publish | 21 | .PHONY: publish |
| @@ -13,10 +13,16 @@ It looks like this: | |||
| 13 | Run the latest Docker image on http://localhost:8080 | 13 | Run the latest Docker image on http://localhost:8080 |
| 14 | 14 | ||
| 15 | ``` | 15 | ``` |
| 16 | docker run --rm -p 8080:80 bndw/wifi-card:latest | 16 | make run |
| 17 | ``` | 17 | ``` |
| 18 | 18 | ||
| 19 | Or run the live-reload server on http://localhost:8080 | 19 | Build the Docker image |
| 20 | |||
| 21 | ``` | ||
| 22 | make build | ||
| 23 | ``` | ||
| 24 | |||
| 25 | Run the live-reload server on http://localhost:8080 | ||
| 20 | 26 | ||
| 21 | ``` | 27 | ``` |
| 22 | make dev | 28 | make dev |
