mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-12 23:35:58 +00:00
automatically rebuild when switching config, allow reuse of already built images
This commit is contained in:
parent
fd223635d3
commit
101fd1bb41
@ -1 +1 @@
|
||||
CONFIGURATION_FOLDER=configurations/example
|
||||
CONFIGURATION=example
|
||||
@ -16,13 +16,13 @@ services:
|
||||
target: code
|
||||
|
||||
webapp:
|
||||
image: ocelotsocialnetwork/webapp-branded:local-production
|
||||
image: ocelotsocialnetwork/webapp-branded:local-${CONFIGURATION}
|
||||
build:
|
||||
dockerfile: src/docker/webapp.Dockerfile
|
||||
target: branded
|
||||
context: .
|
||||
args:
|
||||
- CONFIGURATION_FOLDER=$CONFIGURATION_FOLDER
|
||||
- CONFIGURATION=$CONFIGURATION
|
||||
- APP_IMAGE_TAG_BASE=local-base
|
||||
- APP_IMAGE_TAG_CODE=local-code
|
||||
ports:
|
||||
@ -59,13 +59,13 @@ services:
|
||||
target: code
|
||||
|
||||
backend:
|
||||
image: ocelotsocialnetwork/backend-branded:local-production
|
||||
image: ocelotsocialnetwork/backend-branded:local-${CONFIGURATION}
|
||||
build:
|
||||
dockerfile: src/docker/backend.Dockerfile
|
||||
target: branded
|
||||
context: .
|
||||
args:
|
||||
- CONFIGURATION_FOLDER=$CONFIGURATION_FOLDER
|
||||
- CONFIGURATION=$CONFIGURATION
|
||||
- APP_IMAGE_TAG_BASE=local-base
|
||||
- APP_IMAGE_TAG_CODE=local-code
|
||||
networks:
|
||||
@ -113,14 +113,14 @@ services:
|
||||
|
||||
maintenance:
|
||||
# name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there
|
||||
image: ocelotsocialnetwork/maintenance-branded:local-production
|
||||
image: ocelotsocialnetwork/maintenance-branded:local-${CONFIGURATION}
|
||||
build:
|
||||
# TODO: Separate from webapp, this must be independent
|
||||
dockerfile: src/docker/maintenance.Dockerfile
|
||||
target: branded
|
||||
context: .
|
||||
args:
|
||||
- CONFIGURATION_FOLDER=$CONFIGURATION_FOLDER
|
||||
- CONFIGURATION=$CONFIGURATION
|
||||
- APP_IMAGE_TAG_BASE=local-base
|
||||
- APP_IMAGE_TAG_CODE=local-code
|
||||
networks:
|
||||
|
||||
@ -9,13 +9,13 @@ ARG APP_IMAGE_CODE=${APP_IMAGE}:${APP_IMAGE_TAG_CODE}
|
||||
##################################################################################
|
||||
FROM $APP_IMAGE_CODE as code
|
||||
|
||||
ARG CONFIGURATION_FOLDER=configurations/example
|
||||
ARG CONFIGURATION=example
|
||||
|
||||
# copy public constants and email templates into the Docker image to brand it
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/constants/emails.js src/config/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/constants/logos.js src/config/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/constants/metadata.js src/config/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/email/ src/middleware/helpers/email/
|
||||
COPY configurations/${CONFIGURATION}/branding/constants/emails.js src/config/
|
||||
COPY configurations/${CONFIGURATION}/branding/constants/logos.js src/config/
|
||||
COPY configurations/${CONFIGURATION}/branding/constants/metadata.js src/config/
|
||||
COPY configurations/${CONFIGURATION}/branding/email/ src/middleware/helpers/email/
|
||||
|
||||
##################################################################################
|
||||
# BUILD ##########################################################################
|
||||
|
||||
@ -9,12 +9,12 @@ ARG APP_IMAGE_CODE=${APP_IMAGE}:${APP_IMAGE_TAG_CODE}
|
||||
##################################################################################
|
||||
FROM $APP_IMAGE_CODE as code
|
||||
|
||||
ARG CONFIGURATION_FOLDER=configurations/example
|
||||
ARG CONFIGURATION=example
|
||||
|
||||
# copy public constants into the Docker image to brand it
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/static/ static/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/constants/ constants/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/locales/ locales/
|
||||
COPY configurations/${CONFIGURATION}/branding/static/ static/
|
||||
COPY configurations/${CONFIGURATION}/branding/constants/ constants/
|
||||
COPY configurations/${CONFIGURATION}/branding/locales/ locales/
|
||||
|
||||
##################################################################################
|
||||
# BUILD ##########################################################################
|
||||
|
||||
@ -9,17 +9,17 @@ ARG APP_IMAGE_CODE=${APP_IMAGE}:${APP_IMAGE_TAG_CODE}
|
||||
##################################################################################
|
||||
FROM $APP_IMAGE_CODE as code
|
||||
|
||||
ARG CONFIGURATION_FOLDER=configurations/example
|
||||
ARG CONFIGURATION=example
|
||||
|
||||
# copy public constants into the Docker image to brand it
|
||||
COPY src/tools/ tools/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/static/ static/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/constants/ constants/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/locales/html/ locales/html/
|
||||
# COPY ${CONFIGURATION_FOLDER}/branding/locales/index.js locales/index.js
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/locales/*.json locales/tmp/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/assets/styles/imports/ assets/styles/imports/
|
||||
COPY ${CONFIGURATION_FOLDER}/branding/assets/fonts/ assets/fonts/
|
||||
COPY configurations/${CONFIGURATION}/branding/static/ static/
|
||||
COPY configurations/${CONFIGURATION}/branding/constants/ constants/
|
||||
COPY configurations/${CONFIGURATION}/branding/locales/html/ locales/html/
|
||||
# COPY configurations/${CONFIGURATION}/branding/locales/index.js locales/index.js
|
||||
COPY configurations/${CONFIGURATION}/branding/locales/*.json locales/tmp/
|
||||
COPY configurations/${CONFIGURATION}/branding/assets/styles/imports/ assets/styles/imports/
|
||||
COPY configurations/${CONFIGURATION}/branding/assets/fonts/ assets/fonts/
|
||||
|
||||
RUN apk add --no-cache bash jq
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user