Compare commits

...

5 Commits

Author SHA1 Message Date
Tom Alexander
a78b4eb7c4 Modernize the makefile for the docker image.
All checks were successful
build-homepage Build build-homepage has succeeded
semver Build semver has succeeded
2023-12-23 06:27:37 -05:00
Tom Alexander
9ebcf96ed2 Change default mime type inside .well-known to be plain text.
All checks were successful
semver Build semver has succeeded
build-homepage Build build-homepage has succeeded
2023-09-23 12:36:58 -04:00
Tom Alexander
846da7bcf9 Move well-known to not be hidden. Nginx will handle rewriting the path.
All checks were successful
semver Build semver has succeeded
build-homepage Build build-homepage has succeeded
2023-09-23 12:29:31 -04:00
Tom Alexander
ae7240b2f4 Render my public pgp key in the browser instead of downloading it.
All checks were successful
semver Build semver has succeeded
build-homepage Build build-homepage has succeeded
2023-09-21 23:18:37 -04:00
Tom Alexander
cee38a2c55 Remove extra subkey from pgp key.
All checks were successful
semver Build semver has succeeded
build-homepage Build build-homepage has succeeded
2023-09-21 16:30:03 -04:00
4 changed files with 64 additions and 42 deletions

View File

@@ -1,35 +1,51 @@
SHELL := bash
.ONESHELL:
.SHELLFLAGS := -eu -o pipefail -c
.DELETE_ON_ERROR:
MAKEFLAGS += --warn-undefined-variables
MAKEFLAGS += --no-builtin-rules
OS:=$(shell uname -s)
ifeq ($(origin .RECIPEPREFIX), undefined)
$(error This Make does not support .RECIPEPREFIX. Please use GNU Make 4.0 or later)
endif
.RECIPEPREFIX = >
IMAGE_NAME:=homepage IMAGE_NAME:=homepage
# REMOTE_REPO:=harbor.fizz.buzz/private # REMOTE_REPO:=harbor.fizz.buzz/private
TARGET :=
.PHONY: all .PHONY: help
all: build push help:
> @grep -h "##" $(MAKEFILE_LIST) | grep -v grep | sed -E 's/^([^:]*): *## */\1: /'
.PHONY: build .PHONY: build
build: build: ## Build the docker image.
docker build -t $(IMAGE_NAME) -f Dockerfile ../ > docker build --tag $(IMAGE_NAME) --target=$(TARGET) --file Dockerfile ../../
.PHONY: push .PHONY: push
push: push: ## Push the docker image to a remote repository.
ifdef REMOTE_REPO ifdef REMOTE_REPO
docker tag $(IMAGE_NAME) $(REMOTE_REPO)/$(IMAGE_NAME) > docker tag $(IMAGE_NAME) $(REMOTE_REPO)/$(IMAGE_NAME)
docker push $(REMOTE_REPO)/$(IMAGE_NAME) > docker push $(REMOTE_REPO)/$(IMAGE_NAME)
else else
@echo "REMOTE_REPO not defined, not pushing to a remote repo." > @echo "REMOTE_REPO not defined, not pushing to a remote repo."
endif endif
.PHONY: clean .PHONY: clean
clean: clean:
docker rmi $(IMAGE_NAME) > docker rmi $(IMAGE_NAME)
ifdef REMOTE_REPO ifdef REMOTE_REPO
docker rmi $(REMOTE_REPO)/$(IMAGE_NAME) > docker rmi $(REMOTE_REPO)/$(IMAGE_NAME)
else else
@echo "REMOTE_REPO not defined, not removing from remote repo." > @echo "REMOTE_REPO not defined, not removing from remote repo."
endif endif
.PHONY: run .PHONY: run
run: run: ## Launch the docker image
docker run --rm -i -t -p "8080:8080" $(IMAGE_NAME) > docker run --rm -i -t -p "8080:8080" $(IMAGE_NAME)
.PHONY: shell .PHONY: shell
shell: shell: ## Launch an interactive shell inside the docker image.
docker run --rm -i -t -p "8080:8080" --entrypoint /bin/bash $(IMAGE_NAME) shell: build
> docker run --rm -i -t -p "8080:8080" --entrypoint /bin/bash --mount type=tmpfs,destination=/tmp $(IMAGE_NAME)

View File

@@ -14,6 +14,11 @@ events {
http { http {
include /etc/nginx/mime.types; include /etc/nginx/mime.types;
default_type application/octet-stream; default_type application/octet-stream;
types {
text/plain asc;
}
server_tokens off; server_tokens off;
client_max_body_size 1m; client_max_body_size 1m;
sendfile on; sendfile on;
@@ -38,6 +43,11 @@ http {
return 200 '{"status":"OK"}'; return 200 '{"status":"OK"}';
} }
location /.well-known/ {
alias /srv/http/public/well-known/;
default_type text/plain;
}
location /.well-known/matrix/server { location /.well-known/matrix/server {
default_type application/json; default_type application/json;
add_header "Access-Control-Allow-Origin" *; add_header "Access-Control-Allow-Origin" *;

View File

@@ -1,31 +1,27 @@
-----BEGIN PGP PUBLIC KEY BLOCK----- -----BEGIN PGP PUBLIC KEY BLOCK-----
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 3aqYpMRxpn2t6Nswax1MIM8DBQ==
eFAZd4UKxAGznPQlvsVyhWWIEgMBCAeIfgQYFggAJgIbDBYhBLhIFZNjwod5F5VL =dzEV
4SfeQNm4RVwbBQJlC4ZwBQkLMdY5AAoJECfeQNm4RVwbXscA/A8zRRTCwQKxJ8iz
5jmTcVFAhl2vD781Dtv8NvcWd5t8APwIwcuFVZZA3yayhIxi3aqYpMRxpn2t6Nsw
ax1MIM8DBQ==
=dyR/
-----END PGP PUBLIC KEY BLOCK----- -----END PGP PUBLIC KEY BLOCK-----