From 4c25a804c1f9cea8f0216f85dfb6e9e16d9e9551 Mon Sep 17 00:00:00 2001 From: kenellorando Date: Thu, 14 Sep 2023 22:40:54 -0500 Subject: [PATCH 1/3] Rename directory to src --- {cadence => src}/cadence.Dockerfile | 0 {cadence => src}/icecast2.Dockerfile | 0 {cadence => src}/liquidsoap.Dockerfile | 0 {cadence => src}/server/api.go | 0 {cadence => src}/server/api_actions.go | 0 {cadence => src}/server/db_postgres.go | 0 {cadence => src}/server/db_redis.go | 0 {cadence => src}/server/go.mod | 0 {cadence => src}/server/go.sum | 0 {cadence => src}/server/main.go | 0 {cadence => src}/server/public/css/main.css | 0 {cadence => src}/server/public/index.html | 0 {cadence => src}/server/public/js/aria.js | 0 {cadence => src}/server/public/js/page.js | 0 {cadence => src}/server/public/static/blank.jpg | Bin {cadence => src}/server/public/static/favicon.ico | Bin {cadence => src}/server/public/static/splash.jpg | Bin {cadence => src}/server/routes.go | 0 18 files changed, 0 insertions(+), 0 deletions(-) rename {cadence => src}/cadence.Dockerfile (100%) rename {cadence => src}/icecast2.Dockerfile (100%) rename {cadence => src}/liquidsoap.Dockerfile (100%) rename {cadence => src}/server/api.go (100%) rename {cadence => src}/server/api_actions.go (100%) rename {cadence => src}/server/db_postgres.go (100%) rename {cadence => src}/server/db_redis.go (100%) rename {cadence => src}/server/go.mod (100%) rename {cadence => src}/server/go.sum (100%) rename {cadence => src}/server/main.go (100%) rename {cadence => src}/server/public/css/main.css (100%) rename {cadence => src}/server/public/index.html (100%) rename {cadence => src}/server/public/js/aria.js (100%) rename {cadence => src}/server/public/js/page.js (100%) rename {cadence => src}/server/public/static/blank.jpg (100%) rename {cadence => src}/server/public/static/favicon.ico (100%) rename {cadence => src}/server/public/static/splash.jpg (100%) rename {cadence => src}/server/routes.go (100%) diff --git a/cadence/cadence.Dockerfile b/src/cadence.Dockerfile similarity index 100% rename from cadence/cadence.Dockerfile rename to src/cadence.Dockerfile diff --git a/cadence/icecast2.Dockerfile b/src/icecast2.Dockerfile similarity index 100% rename from cadence/icecast2.Dockerfile rename to src/icecast2.Dockerfile diff --git a/cadence/liquidsoap.Dockerfile b/src/liquidsoap.Dockerfile similarity index 100% rename from cadence/liquidsoap.Dockerfile rename to src/liquidsoap.Dockerfile diff --git a/cadence/server/api.go b/src/server/api.go similarity index 100% rename from cadence/server/api.go rename to src/server/api.go diff --git a/cadence/server/api_actions.go b/src/server/api_actions.go similarity index 100% rename from cadence/server/api_actions.go rename to src/server/api_actions.go diff --git a/cadence/server/db_postgres.go b/src/server/db_postgres.go similarity index 100% rename from cadence/server/db_postgres.go rename to src/server/db_postgres.go diff --git a/cadence/server/db_redis.go b/src/server/db_redis.go similarity index 100% rename from cadence/server/db_redis.go rename to src/server/db_redis.go diff --git a/cadence/server/go.mod b/src/server/go.mod similarity index 100% rename from cadence/server/go.mod rename to src/server/go.mod diff --git a/cadence/server/go.sum b/src/server/go.sum similarity index 100% rename from cadence/server/go.sum rename to src/server/go.sum diff --git a/cadence/server/main.go b/src/server/main.go similarity index 100% rename from cadence/server/main.go rename to src/server/main.go diff --git a/cadence/server/public/css/main.css b/src/server/public/css/main.css similarity index 100% rename from cadence/server/public/css/main.css rename to src/server/public/css/main.css diff --git a/cadence/server/public/index.html b/src/server/public/index.html similarity index 100% rename from cadence/server/public/index.html rename to src/server/public/index.html diff --git a/cadence/server/public/js/aria.js b/src/server/public/js/aria.js similarity index 100% rename from cadence/server/public/js/aria.js rename to src/server/public/js/aria.js diff --git a/cadence/server/public/js/page.js b/src/server/public/js/page.js similarity index 100% rename from cadence/server/public/js/page.js rename to src/server/public/js/page.js diff --git a/cadence/server/public/static/blank.jpg b/src/server/public/static/blank.jpg similarity index 100% rename from cadence/server/public/static/blank.jpg rename to src/server/public/static/blank.jpg diff --git a/cadence/server/public/static/favicon.ico b/src/server/public/static/favicon.ico similarity index 100% rename from cadence/server/public/static/favicon.ico rename to src/server/public/static/favicon.ico diff --git a/cadence/server/public/static/splash.jpg b/src/server/public/static/splash.jpg similarity index 100% rename from cadence/server/public/static/splash.jpg rename to src/server/public/static/splash.jpg diff --git a/cadence/server/routes.go b/src/server/routes.go similarity index 100% rename from cadence/server/routes.go rename to src/server/routes.go From 1c123ff31d261c83a99f6c92e8c7d8859e049730 Mon Sep 17 00:00:00 2001 From: kenellorando Date: Thu, 14 Sep 2023 23:06:53 -0500 Subject: [PATCH 2/3] Rename server to api --- Makefile | 13 ++++++++----- config/cadence.env.example | 2 +- config/nginx.conf.example | 4 ++-- docker-compose.yml | 16 ++++++++-------- docker-compose.yml.example | 18 +++++++++--------- src/{server => api}/api.go | 0 src/{server => api}/api_actions.go | 0 src/{server => api}/db_postgres.go | 0 src/{server => api}/db_redis.go | 0 src/{server => api}/go.mod | 0 src/{server => api}/go.sum | 0 src/{server => api}/main.go | 0 src/{server => api}/public/css/main.css | 0 src/{server => api}/public/index.html | 0 src/{server => api}/public/js/aria.js | 0 src/{server => api}/public/js/page.js | 0 src/{server => api}/public/static/blank.jpg | Bin src/{server => api}/public/static/favicon.ico | Bin src/{server => api}/public/static/splash.jpg | Bin src/{server => api}/routes.go | 0 ...ence.Dockerfile => cadence-api.Dockerfile} | 10 +++++----- 21 files changed, 33 insertions(+), 30 deletions(-) rename src/{server => api}/api.go (100%) rename src/{server => api}/api_actions.go (100%) rename src/{server => api}/db_postgres.go (100%) rename src/{server => api}/db_redis.go (100%) rename src/{server => api}/go.mod (100%) rename src/{server => api}/go.sum (100%) rename src/{server => api}/main.go (100%) rename src/{server => api}/public/css/main.css (100%) rename src/{server => api}/public/index.html (100%) rename src/{server => api}/public/js/aria.js (100%) rename src/{server => api}/public/js/page.js (100%) rename src/{server => api}/public/static/blank.jpg (100%) rename src/{server => api}/public/static/favicon.ico (100%) rename src/{server => api}/public/static/splash.jpg (100%) rename src/{server => api}/routes.go (100%) rename src/{cadence.Dockerfile => cadence-api.Dockerfile} (67%) diff --git a/Makefile b/Makefile index 6c4259d5..9eafb69a 100644 --- a/Makefile +++ b/Makefile @@ -1,13 +1,16 @@ build-init: docker buildx create --platform linux/arm/v7,linux/amd64 --use --name multiarch -build-cadence: - docker buildx build --push --platform linux/arm/v7,linux/amd64 --tag kenellorando/cadence:latest --tag kenellorando/cadence:$(VERSION) --file ./cadence/cadence.Dockerfile ./cadence/ +build-cadence_api: + docker buildx build --push --platform linux/arm/v7,linux/amd64 --tag "kenellorando/cadence_api:latest" --tag kenellorando/cadence_api:$(VERSION) --file ./src/cadence-api.Dockerfile ./src/ + +# build-cadence_api: +# docker buildx build --push --platform linux/arm/v7,linux/amd64 --tag "kenellorando/cadence:latest" --tag kenellorando/cadence:$(VERSION) --file ./src/cadence.Dockerfile ./src/ build-cadence_icecast2: - docker buildx build --push --platform linux/arm/v7,linux/amd64 --tag kenellorando/cadence_icecast2:latest --tag kenellorando/cadence_icecast2:$(VERSION) --file ./cadence/icecast2.Dockerfile ./cadence/ + docker buildx build --push --platform linux/arm/v7,linux/amd64 --tag kenellorando/cadence_icecast2:latest --tag kenellorando/cadence_icecast2:$(VERSION) --file ./src/icecast2.Dockerfile ./src/ build-cadence_liquidsoap: - docker buildx build --push --platform linux/arm/v7,linux/amd64 --tag kenellorando/cadence_liquidsoap:latest --tag kenellorando/cadence_liquidsoap:$(VERSION) --file ./cadence/liquidsoap.Dockerfile ./cadence/ + docker buildx build --push --platform linux/arm/v7,linux/amd64 --tag kenellorando/cadence_liquidsoap:latest --tag kenellorando/cadence_liquidsoap:$(VERSION) --file ./src/liquidsoap.Dockerfile ./src/ -build-all: build-cadence build-cadence_icecast2 build-cadence_liquidsoap +build-all: build-cadence_api build-cadence_icecast2 build-cadence_liquidsoap diff --git a/config/cadence.env.example b/config/cadence.env.example index 57c9a8c0..14b2cbb6 100644 --- a/config/cadence.env.example +++ b/config/cadence.env.example @@ -9,7 +9,7 @@ POSTGRES_PASSWORD=CADENCE_PASS_EXAMPLE # Development CSERVER_DEVMODE=0 CSERVER_VERSION=5.4.3 -CSERVER_ROOTPATH=/cadence/server/ +CSERVER_ROOTPATH=/cadence/api/ # Service Addresses CSERVER_PORT=:8080 diff --git a/config/nginx.conf.example b/config/nginx.conf.example index 5c4ac3b5..d0b080ee 100644 --- a/config/nginx.conf.example +++ b/config/nginx.conf.example @@ -27,10 +27,10 @@ http { chunked_transfer_encoding off; proxy_buffering off; proxy_cache off; - proxy_pass http://cadence:8080/api/radiodata/sse; + proxy_pass http://cadence-api:8080/api/radiodata/sse; } location / { - proxy_pass http://cadence:8080/; + proxy_pass http://cadence-api:8080/; } } } diff --git a/docker-compose.yml b/docker-compose.yml index 335af318..22a343e6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -21,7 +21,7 @@ services: icecast2: build: - dockerfile: ./cadence/icecast2.Dockerfile + dockerfile: ./src/icecast2.Dockerfile image: kenellorando/cadence_icecast2:latest container_name: icecast2 restart: always @@ -35,7 +35,7 @@ services: liquidsoap: build: - dockerfile: ./cadence/liquidsoap.Dockerfile + dockerfile: ./src/liquidsoap.Dockerfile image: kenellorando/cadence_liquidsoap:latest container_name: liquidsoap restart: always @@ -50,12 +50,12 @@ services: internal_services: stream_delivery: - cadence: + cadence-api: build: - context: ./cadence - dockerfile: ./cadence.Dockerfile - image: kenellorando/cadence - container_name: cadence + context: ./src + dockerfile: ./cadence-api.Dockerfile + image: kenellorando/cadence-api + container_name: cadence-api restart: always ports: - 8080:8080 @@ -81,7 +81,7 @@ services: ports: - 80:80 depends_on: - - cadence + - cadence-api networks: external_services: diff --git a/docker-compose.yml.example b/docker-compose.yml.example index 23bda1a9..d86f1c91 100644 --- a/docker-compose.yml.example +++ b/docker-compose.yml.example @@ -21,7 +21,7 @@ services: icecast2: build: - dockerfile: ./cadence/icecast2.Dockerfile + dockerfile: ./src/icecast2.Dockerfile image: kenellorando/cadence_icecast2:latest container_name: icecast2 restart: always @@ -35,7 +35,7 @@ services: liquidsoap: build: - dockerfile: ./cadence/liquidsoap.Dockerfile + dockerfile: ./src/liquidsoap.Dockerfile image: kenellorando/cadence_liquidsoap:latest container_name: liquidsoap restart: always @@ -50,19 +50,19 @@ services: internal_services: stream_delivery: - cadence: + cadence-api: build: - context: ./cadence - dockerfile: ./cadence.Dockerfile - image: kenellorando/cadence - container_name: cadence + context: ./src + dockerfile: ./cadence-api.Dockerfile + image: kenellorando/cadence-api + container_name: cadence-api restart: always ports: - 8080:8080 env_file: - ./config/cadence.env volumes: - - CADENCE_PATH_EXAMPLE:CADENCE_PATH_EXAMPLE + - /music:/music depends_on: - icecast2 - liquidsoap @@ -81,7 +81,7 @@ services: ports: - 80:80 depends_on: - - cadence + - cadence-api networks: external_services: diff --git a/src/server/api.go b/src/api/api.go similarity index 100% rename from src/server/api.go rename to src/api/api.go diff --git a/src/server/api_actions.go b/src/api/api_actions.go similarity index 100% rename from src/server/api_actions.go rename to src/api/api_actions.go diff --git a/src/server/db_postgres.go b/src/api/db_postgres.go similarity index 100% rename from src/server/db_postgres.go rename to src/api/db_postgres.go diff --git a/src/server/db_redis.go b/src/api/db_redis.go similarity index 100% rename from src/server/db_redis.go rename to src/api/db_redis.go diff --git a/src/server/go.mod b/src/api/go.mod similarity index 100% rename from src/server/go.mod rename to src/api/go.mod diff --git a/src/server/go.sum b/src/api/go.sum similarity index 100% rename from src/server/go.sum rename to src/api/go.sum diff --git a/src/server/main.go b/src/api/main.go similarity index 100% rename from src/server/main.go rename to src/api/main.go diff --git a/src/server/public/css/main.css b/src/api/public/css/main.css similarity index 100% rename from src/server/public/css/main.css rename to src/api/public/css/main.css diff --git a/src/server/public/index.html b/src/api/public/index.html similarity index 100% rename from src/server/public/index.html rename to src/api/public/index.html diff --git a/src/server/public/js/aria.js b/src/api/public/js/aria.js similarity index 100% rename from src/server/public/js/aria.js rename to src/api/public/js/aria.js diff --git a/src/server/public/js/page.js b/src/api/public/js/page.js similarity index 100% rename from src/server/public/js/page.js rename to src/api/public/js/page.js diff --git a/src/server/public/static/blank.jpg b/src/api/public/static/blank.jpg similarity index 100% rename from src/server/public/static/blank.jpg rename to src/api/public/static/blank.jpg diff --git a/src/server/public/static/favicon.ico b/src/api/public/static/favicon.ico similarity index 100% rename from src/server/public/static/favicon.ico rename to src/api/public/static/favicon.ico diff --git a/src/server/public/static/splash.jpg b/src/api/public/static/splash.jpg similarity index 100% rename from src/server/public/static/splash.jpg rename to src/api/public/static/splash.jpg diff --git a/src/server/routes.go b/src/api/routes.go similarity index 100% rename from src/server/routes.go rename to src/api/routes.go diff --git a/src/cadence.Dockerfile b/src/cadence-api.Dockerfile similarity index 67% rename from src/cadence.Dockerfile rename to src/cadence-api.Dockerfile index 3abf555f..5c573e19 100644 --- a/src/cadence.Dockerfile +++ b/src/cadence-api.Dockerfile @@ -4,19 +4,19 @@ ARG TARGETPLATFORM BUILDPLATFORM TARGETOS TARGETARCH WORKDIR /cadence COPY ./* ./ RUN go mod download -RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags="-w -s" -o /cadence-server +RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags="-w -s" -o /cadence-api ARG ARCH= FROM ${ARCH}golang:1.21-alpine LABEL maintainer="Ken Ellorando (kenellorando.com)" LABEL source="github.com/kenellorando/cadence" -COPY --from=builder /cadence/public /cadence/server/public -COPY --from=builder /cadence-server /cadence/cadence-server +COPY --from=builder /cadence/public /cadence/api/public +COPY --from=builder /cadence-api /cadence/cadence-api RUN adduser --disabled-password --gecos "" cadence -RUN chown cadence /cadence/ /cadence/* /cadence/cadence-server +RUN chown cadence /cadence/ /cadence/* /cadence/cadence-api RUN chmod u+wrx /cadence/ /cadence/* EXPOSE 8080 USER cadence -CMD [ "/cadence/cadence-server" ] +CMD [ "/cadence/cadence-api" ] From 28e75c0a529b06cf0eef4a2ae749c24a637a888d Mon Sep 17 00:00:00 2001 From: kenellorando Date: Thu, 2 Nov 2023 00:10:57 -0500 Subject: [PATCH 3/3] Add purge flag to autoremove --- src/liquidsoap.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/liquidsoap.Dockerfile b/src/liquidsoap.Dockerfile index 11d0fe14..f6cd2f25 100644 --- a/src/liquidsoap.Dockerfile +++ b/src/liquidsoap.Dockerfile @@ -12,7 +12,7 @@ RUN ln -s /usr/bin/dpkg-split /usr/sbin/dpkg-split && \ RUN apt clean all RUN apt update RUN apt install liquidsoap=1.4.3-3 -y -RUN apt autoremove +RUN apt autoremove --purge EXPOSE 1234 USER liquidsoap CMD [ "liquidsoap", "-t", "/etc/liquidsoap/cadence.liq" ]