From daad060e6c2402528785434ce2b30194793de0b1 Mon Sep 17 00:00:00 2001 From: Yann Autissier Date: Sat, 10 Dec 2022 13:31:41 +0000 Subject: [PATCH 1/3] multi domain HOST_LB=true --- Makefile | 31 ++++++++++++++++++++----------- docker/{stack.mk => astroport.mk} | 5 ++++- 2 files changed, 24 insertions(+), 12 deletions(-) rename docker/{stack.mk => astroport.mk} (68%) diff --git a/Makefile b/Makefile index 402b1801..e68d645c 100644 --- a/Makefile +++ b/Makefile @@ -4,37 +4,46 @@ MYOS_REPOSITORY ?= https://github.com/aynicos/myos $(MYOS): -@git clone $(MYOS_REPOSITORY) $(MYOS) -.PHONY: all install shellcheck shellcheck-% tests SHELL_FILES ?= $(wildcard .*/*.sh */*.sh */*/*.sh) +.PHONY: all all: install tests -install: upgrade build myos-host up player - -upgrade: migrate-ipfs migrate-zen - echo "Welcome to myos docker land - make a user - make a player -" +.PHONY: install +install: upgrade build myos up player +.PHONY: migrate +migrate-%: home := ~/.zen/game/players migrate-%: - [ ! -f /var/lib/docker/volumes/$(HOSTNAME)_$*/_data ] \ - && $(RUN) $(SUDO) mkdir -p /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ - && $(RUN) $(SUDO) cp -a ~/.$* /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ - && $(RUN) $(SUDO) chown -R $(USER) /var/lib/docker/volumes/$(HOSTNAME)_$* \ + [ ! -d /var/lib/docker/volumes/$(HOSTNAME)_$* ] \ + && $(RUN) $(SUDO) mkdir -p /var/lib/docker/volumes/$(HOSTNAME)_$* \ + && $(RUN) $(SUDO) cp -a $(if $($*),$($*)/,~/.$*/) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ + && $(RUN) $(SUDO) chown -R $(HOST_UID):$(HOST_GID) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ || : +.PHONY: player player: STACK := User player: docker-network-create-$(USER) $(call make,stack-User-$(if $(DELETE),down,up),$(MYOS),COMPOSE_PROJECT_NAME MAIL) +.PHONY: player-% player-%: STACK := User player-%: $(if $(filter $*,$(filter-out %-%,$(patsubst docker-compose-%,%,$(filter docker-compose-%,$(MAKE_TARGETS))))), \ $(call make,stack-User-$*,$(MYOS),COMPOSE_PROJECT_NAME MAIL) \ ) -tests: shellcheck - +.PHONY: shellcheck shellcheck: shellcheck $(SHELL_FILES) ||: +.PHONY: shellcheck-% shellcheck-%: shellcheck $*/*.sh + +.PHONY: tests +tests: shellcheck + +.PHONY: upgrade +upgrade: migrate-home migrate-ipfs + echo "Welcome to myos docker land - make a user - make a player -" diff --git a/docker/stack.mk b/docker/astroport.mk similarity index 68% rename from docker/stack.mk rename to docker/astroport.mk index 8e8efa88..2ff187da 100644 --- a/docker/stack.mk +++ b/docker/astroport.mk @@ -1,7 +1,10 @@ COMPOSE_FILE_VDI := true +COMPOSE_IGNORE_ORPHANS := true DOCKER_IMAGES_MYOS := x2go:xfce-debian ENV_VARS += HOST_ASTROPORT_SERVICE_1234_TAGS -HOST_ASTROPORT_SERVICE_1234_TAGS ?= urlprefix-astroport.$(DOMAIN)/ +HOST_ASTROPORT_SERVICE_URIS ?= $(patsubst %,astroport.%,$(APP_URIS)) +HOST_ASTROPORT_SERVICE_1234_TAGS ?= $(call urlprefix,,$(HOST_ASTROPORT_SERVICE_1234_URIS)) +HOST_ASTROPORT_SERVICE_1234_URIS ?= $(HOST_ASTROPORT_SERVICE_URIS) HOST_ASTROPORT_UFW_UPDATE := 1234/tcp 12245:12445/tcp 45720/tcp MAKE_VARS += SSH_PORT User host SERVICE := astroport -- 2.39.2 From 4f3021c323f2ee6ba34641aaf9d0114ca9252a09 Mon Sep 17 00:00:00 2001 From: Yann Autissier Date: Sat, 10 Dec 2022 14:12:50 +0000 Subject: [PATCH 2/3] make upgrade --- Makefile | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index e68d645c..4476452b 100644 --- a/Makefile +++ b/Makefile @@ -10,16 +10,17 @@ SHELL_FILES ?= $(wildcard .*/*.sh */*.sh */*/*.sh) all: install tests .PHONY: install -install: upgrade build myos up player +install: build myos up player .PHONY: migrate migrate-%: home := ~/.zen/game/players migrate-%: - [ ! -d /var/lib/docker/volumes/$(HOSTNAME)_$* ] \ - && $(RUN) $(SUDO) mkdir -p /var/lib/docker/volumes/$(HOSTNAME)_$* \ - && $(RUN) $(SUDO) cp -a $(if $($*),$($*)/,~/.$*/) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ - && $(RUN) $(SUDO) chown -R $(HOST_UID):$(HOST_GID) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ - || : + if $(SUDO) test ! -d /var/lib/docker/volumes/$(HOSTNAME)_$*; then \ + $(RUN) $(SUDO) mkdir -p /var/lib/docker/volumes/$(HOSTNAME)_$* \ + && $(RUN) $(SUDO) cp -a $(if $($*),$($*)/,~/.$*/) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ + && $(RUN) $(SUDO) chown -R $(HOST_UID):$(HOST_GID) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \ + ; \ + fi .PHONY: player player: STACK := User @@ -45,5 +46,5 @@ shellcheck-%: tests: shellcheck .PHONY: upgrade -upgrade: migrate-home migrate-ipfs +upgrade: migrate-home migrate-ipfs install echo "Welcome to myos docker land - make a user - make a player -" -- 2.39.2 From bc0c5d477bcab4873e0b858676cfedc59b62e58c Mon Sep 17 00:00:00 2001 From: Yann Autissier Date: Sat, 10 Dec 2022 17:14:30 +0000 Subject: [PATCH 3/3] make install --- Makefile | 10 ++++++---- docker/astroport/Dockerfile | 2 +- docker/astroport/astroport.sh | 3 ++- docker/docker-compose.yml | 2 -- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 4476452b..ddcbd388 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,7 @@ -MYOS ?= ../myos -MYOS_REPOSITORY ?= https://github.com/aynicos/myos +MYOS ?= ../myos +MYOS_REPOSITORY ?= $(patsubst %/$(APP),%/myos,$(APP_REPOSITORY)) +APP ?= $(lastword $(subst /, ,$(APP_REPOSITORY))) +APP_REPOSITORY ?= $(shell git config --get remote.origin.url 2>/dev/null) -include $(MYOS)/make/include.mk $(MYOS): -@git clone $(MYOS_REPOSITORY) $(MYOS) @@ -10,7 +12,8 @@ SHELL_FILES ?= $(wildcard .*/*.sh */*.sh */*/*.sh) all: install tests .PHONY: install -install: build myos up player +install: myos build up player + echo "Welcome to myos docker land - make a user - make a player -" .PHONY: migrate migrate-%: home := ~/.zen/game/players @@ -47,4 +50,3 @@ tests: shellcheck .PHONY: upgrade upgrade: migrate-home migrate-ipfs install - echo "Welcome to myos docker land - make a user - make a player -" diff --git a/docker/astroport/Dockerfile b/docker/astroport/Dockerfile index b9e901ea..ef0f8817 100644 --- a/docker/astroport/Dockerfile +++ b/docker/astroport/Dockerfile @@ -191,7 +191,7 @@ VOLUME "/home/$USER/Astroport" # homedir RUN mkdir -p "/home/$USER/.ipfs" "/home/$USER/.zen/game/players" "/home/$USER/Astroport" \ - && chown "$USER" "/home/$USER/.ipfs" "/home/$USER/.zen/game/players" "/home/$USER/Astroport" + && chown -R "$USER" "/home/$USER" HEALTHCHECK CMD [ $(ps aux |grep 'nc -l -p' |wc -l) -lt 199 ] && echo -n OK diff --git a/docker/astroport/astroport.sh b/docker/astroport/astroport.sh index cfefb863..ab055ba9 100755 --- a/docker/astroport/astroport.sh +++ b/docker/astroport/astroport.sh @@ -14,8 +14,9 @@ log() { } zen() { + mkdir -p /home/zen/Astroport + sudo chown zen:users /home/zen /home/zen/.zen /home/zen/.zen/game /home/zen/.zen/game/players [ -d "$ASTROPORT_DIR" ] && cd "$ASTROPORT_DIR" && git pull -q || git clone -q "$ASTROPORT_REPO" "$ASTROPORT_DIR" - sudo chown zen /home/zen/.zen/game/players } case "${1:-${cmd:-start}}" in diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index fba3bd77..88f8643b 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -12,12 +12,10 @@ services: restart: unless-stopped tty: true volumes: - - data:/home/zen/Astroport:cached - home:/home/zen/.zen/game/players:delegated - ipfs:/home/zen/.ipfs:cached,ro working_dir: /home/zen volumes: - data: home: ipfs: -- 2.39.2