Dockerize skycraft
This commit is contained in:
parent
33733c6fe4
commit
6966c5d45f
24
Dockerfile
Normal file
24
Dockerfile
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
FROM node:23-alpine as skycraft-deps
|
||||||
|
|
||||||
|
WORKDIR /workspace/skycraft
|
||||||
|
ADD ./skycraft/package.json ./
|
||||||
|
ADD ./skycraft/yarn.lock ./
|
||||||
|
RUN yarn install
|
||||||
|
|
||||||
|
|
||||||
|
FROM skycraft-deps as skycraft-build
|
||||||
|
|
||||||
|
ADD . /workspace
|
||||||
|
RUN yarn build
|
||||||
|
|
||||||
|
|
||||||
|
FROM skycraft-deps as skycraft-dev
|
||||||
|
|
||||||
|
ENTRYPOINT ["yarn"]
|
||||||
|
CMD ["run", "serve"]
|
||||||
|
|
||||||
|
|
||||||
|
FROM scratch as skycraft-export
|
||||||
|
|
||||||
|
COPY --from=skycraft-build /workspace/skycraft/app.js /
|
||||||
|
COPY --from=skycraft-build /workspace/skycraft/static/* /
|
31
Makefile
Normal file
31
Makefile
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
export DOCKER_BUILDKIT=1
|
||||||
|
|
||||||
|
skycraft-dev-image := skycraft-dev
|
||||||
|
|
||||||
|
.PHONY: skycraft
|
||||||
|
skycraft: ## build skycraft
|
||||||
|
docker build \
|
||||||
|
--output=out/skycraft \
|
||||||
|
--target=skycraft-export \
|
||||||
|
.
|
||||||
|
|
||||||
|
.PHONY: skycraft-dev-image
|
||||||
|
skycraft-dev-image:
|
||||||
|
docker build \
|
||||||
|
-t $(skycraft-dev-image) \
|
||||||
|
--target=skycraft-dev \
|
||||||
|
.
|
||||||
|
|
||||||
|
.PHONY: skycraft-dev
|
||||||
|
skycraft-dev: skycraft-dev-image
|
||||||
|
docker run -it --rm \
|
||||||
|
-v .:/workspace \
|
||||||
|
-v /workspace/skycraft/node_modules \
|
||||||
|
-p 8000:8000 \
|
||||||
|
$(skycraft-dev-image)
|
||||||
|
|
||||||
|
.PHONY: help
|
||||||
|
help: ## Show this help
|
||||||
|
@echo Noteworthy targets:
|
||||||
|
@egrep '^[a-zA-Z_-]+:.*?## .*$$' $(firstword $(MAKEFILE_LIST)) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
|
||||||
|
.DEFAULT_GOAL := help
|
Loading…
Reference in New Issue
Block a user