build: working watchcontainerrun logic in Makefile and Dockerfiles
This commit is contained in:
parent
5568e75f6a
commit
415277c636
24
Makefile
24
Makefile
@ -251,13 +251,21 @@ serve-database: --containerized-database;
|
||||
$(MAKE) -- --image-run-$*-backend
|
||||
--containerized-%-hoogle: --containerized-%-hoogle-backend;
|
||||
|
||||
--containerized-%-minio: FRADRIVE_SERVICE=minio
|
||||
--containerized-%-minio: --image-build
|
||||
$(MAKE) -- --image-run-$*-minio
|
||||
# --containerized-%-minio: FRADRIVE_SERVICE=minio
|
||||
# --containerized-%-minio: --image-build
|
||||
# $(MAKE) -- --image-run-$*-minio
|
||||
--containerized---start-minio:
|
||||
MINIO_DIR=`mktemp` ; \
|
||||
./utils/watchcontainerrun.sh "$(CONTAINER_COMMAND)" "$(CONTAINER_FILE)" "" "rm -rf $${MINIO_DIR}" & \
|
||||
CONTAINER_ID=`$(CONTAINER_RUN) --name fradrive.minio.$$(date +'%Y-%m-%dT%H-%M-%S') $(MINIO_IMAGE) -- server $${MINIO_DIR}` ; \
|
||||
echo "CONTAINER_ID=$${CONTAINER_ID}" >> $(CONTAINER_FILE)
|
||||
|
||||
--containerized-%-memcached: FRADRIVE_SERVICE=memcached
|
||||
--containerized-%-memcached: --image-build
|
||||
$(MAKE) -- --image-run-$*-memcached
|
||||
# --containerized-%-memcached: FRADRIVE_SERVICE=memcached
|
||||
# --containerized-%-memcached: --image-build
|
||||
# $(MAKE) -- --image-run-$*-memcached
|
||||
--containerized---start-memcached:
|
||||
./utils/watchcontainerrun.sh "$(CONTAINER_COMMAND)" "$(CONTAINER_FILE)" &
|
||||
$(CONTAINER_RUN) $(MEMCACHED_IMAGE)
|
||||
|
||||
--containerized-%-database: FRADRIVE_SERVICE=database
|
||||
--containerized-%-database: --image-build
|
||||
@ -371,10 +379,10 @@ start-%: --ensure-develop
|
||||
--start-backend: start.sh
|
||||
DEV_PORT_HTTP=`cat $(CONTAINER_FILE) | grep 'DEV_PORT_HTTP=' | sed 's/DEV_PORT_HTTP=//'`; \
|
||||
DEV_PORT_HTTPS=`cat $(CONTAINER_FILE) | grep 'DEV_PORT_HTTPS=' | sed 's/DEV_PORT_HTTPS=//'`; \
|
||||
./utils/watchrun.sh "$(CONTAINER_FILE)" ./start.sh
|
||||
./start.sh
|
||||
--start-hoogle-backend: hoogle.sh
|
||||
HOOGLE_PORT=`cat $(CONTAINER_FILE) | grep 'HOOGLE_PORT=' | sed 's/HOOGLE_PORT=//'` ; \
|
||||
./utils/watchrun.sh "$(CONTAINER_FILE)" ./hoogle.sh
|
||||
./hoogle.sh
|
||||
|
||||
--start-frontend: static
|
||||
npm run start
|
||||
|
||||
@ -21,7 +21,7 @@ RUN mkdir -p "${PROJECT_DIR}/.stack"
|
||||
ENV STACK_ROOT="${PROJECT_DIR}/.stack"
|
||||
|
||||
RUN make .stack STACK_ROOT=${STACK_ROOT} IN_CONTAINER=true
|
||||
RUN stack build yesod-bin
|
||||
# RUN stack build yesod-bin
|
||||
|
||||
ENV FRADRIVE_MAKE_TARGET=serve-backend
|
||||
ENTRYPOINT cat ${CONTAINER_FILE} > /container-file && make -- ${FRADRIVE_MAKE_TARGET} STACK_ROOT="${STACK_ROOT}" IN_CONTAINER=true CONTAINER_FILE="${CONTAINER_FILE}"
|
||||
|
||||
@ -7,16 +7,3 @@ COPY --chown=postgres:postgres docker/database/pg_hba.conf /tmp/pg_hba.conf
|
||||
COPY --chown=postgres:postgres docker/database/postgresql.conf /tmp/postgresql.conf
|
||||
COPY docker/database/pgconfig.sh /docker-entrypoint-initdb.d/_pgconfig.sh
|
||||
COPY --chown=postgres:postgres docker/database/schema.sql /docker-entrypoint-initdb.d/schema.sql
|
||||
|
||||
# RUN cp /mnt/fradrive/docker/database/schema.sql /schema.sql && chown postgres:postgres /schema.sql
|
||||
# RUN cp /mnt/fradrive/docker/database/initdb.sh /etc/fradrive-db && chmod 755 /etc/fradrive-db
|
||||
|
||||
USER postgres
|
||||
|
||||
# postgresql.conf and postgres_hba.conf resulted in error (Invalid data directory or sth); using -o/--options in initdb.sh instead
|
||||
# COPY --chown=postgres:postgres --chmod=644 ./postgresql.conf /etc/postgresql/12/main/postgresql.conf
|
||||
# COPY --chown=postgres:postgres --chmod=644 ./pg_hba.conf /etc/postgresql/12/main/pg_hba.conf
|
||||
# ADD ./schema.sql /schema.sql
|
||||
# ADD --chmod=755 ./initdb.sh /etc/fradrive-db
|
||||
|
||||
EXPOSE 5432/tcp
|
||||
@ -28,5 +28,5 @@ ENV HOME=${PROJECT_DIR}
|
||||
#RUN make well-known IN_CONTAINER=true
|
||||
RUN make -- static
|
||||
|
||||
ENV FRADRIVE_MAKE_TARGET=watch-frontend
|
||||
ENV FRADRIVE_MAKE_TARGET=start-frontend
|
||||
ENTRYPOINT make -- ${FRADRIVE_MAKE_TARGET} IN_CONTAINER=true CHROME_BIN=${CHROME_BIN}
|
||||
|
||||
@ -1,10 +0,0 @@
|
||||
FROM docker.io/memcached:latest
|
||||
|
||||
USER root
|
||||
|
||||
RUN apt-get update && apt-get -y install inotify-tools
|
||||
|
||||
ENV MOUNT_DIR /mnt/fradrive
|
||||
WORKDIR ${MOUNT_DIR}
|
||||
|
||||
ENTRYPOINT ${MOUNT_DIR}/utils/watchrun.sh ${CONTAINER_FILE} "su memcache -c /usr/local/bin/docker-entrypoint.sh"
|
||||
@ -1,4 +0,0 @@
|
||||
FROM docker.io/minio/minio:latest
|
||||
|
||||
WORKDIR /mnt/fradrive
|
||||
ENTRYPOINT MINIO_DIR=`mktemp -d` ; ls -l $MINIO_DIR ; ./utils/watchrun.sh "${CONTAINER_FILE}" "/usr/bin/docker-entrypoint.sh server ${MINIO_DIR}" "rm -rf ${MINIO_DIR}"
|
||||
Reference in New Issue
Block a user