Compare commits

...

2 Commits

Author SHA1 Message Date
Collin J. Doering f646927e9a
Makefile: Add deploy target, which pushes the resulting OCI image 2024-01-01 20:37:17 -05:00
Collin J. Doering 8176119556
Dockerfile: Use CMD instead of ENTRYPOINT
This corrects ci behaviour, allowing this image to now be used like this:

docker run --rm -it guix-builder:latest <cmd>

Where <cmd> is any executable on the containers PATH.
2024-01-01 20:35:12 -05:00
2 changed files with 16 additions and 6 deletions

View File

@ -11,4 +11,4 @@ ENV PROOT_TMP_DIR=/tmp/proot
RUN rm /tmp/proot/delete-me
VOLUME /var/guix/daemon-socket/socket /gnu/store /etc/ssl
ENTRYPOINT ["/guix-builder/bin/bash"]
CMD ["/guix-builder/bin/bash"]

View File

@ -6,7 +6,12 @@ GUIX_MANIFEST_DEV := manifest-dev.scm
TARBALL ?= guix-tarball-pack.tar.gz
LINKS_TARBALL ?= links.tar.gz
PASSWD_FILE ?= passwd
IMAGE_TAG ?= guix-builder
OCI_REGISTRY ?= docker-local.nexus.home.rekahsoft.ca
IMAGE_NAME ?= guix-builder
IMAGE_TAG ?= latest
LOCAL_IMAGE_NAME := $(IMAGE_NAME):$(IMAGE_TAG)
PUSH_IMAGE_NAME := $(OCI_REGISTRY)/$(LOCAL_IMAGE_NAME)
$(PASSWD_FILE):
echo 'root:x:0:0:root:/root:/bin/sh' > passwd
@ -30,7 +35,7 @@ pre-build: $(TARBALL) $(LINKS_TARBALL) $(PASSWD_FILE)
.PHONY: build
build: pre-build
@docker build -t $(IMAGE_TAG) .
@docker build -t $(IMAGE_NAME) .
.PHONY: run
run: build
@ -38,16 +43,21 @@ run: build
-v /var/guix/daemon-socket/socket:/var/guix/daemon-socket/socket \
-v /gnu/store:/gnu/store:ro \
-v /etc/ssl:/etc/ssl:ro \
$(IMAGE_TAG):latest
$(IMAGE_NAME):latest
.PHONY: run-no-store
run-no-store: build
@docker run --rm -it $(IMAGE_TAG):latest
@docker run --rm -it $(IMAGE_NAME):latest
.PHONY: shell
shell:
@./shell.sh $(GUIX_MANIFEST) $(GUIX_MANIFEST_DEV)
.PHONY:
.PHONY: clean
clean:
rm -r $(TARBALL) $(LINKS_TARBALL) $(PASSWD_FILE)
.PHONY: deploy
deploy:
docker tag $(IMAGE_NAME) $(PUSH_IMAGE_NAME)
docker push $(PUSH_IMAGE_NAME)