chore: docker cleanup/refactoring
This commit is contained in:
@@ -12,3 +12,4 @@ phpstan.dist.neon
|
|||||||
phpunit.dist.xml
|
phpunit.dist.xml
|
||||||
nomad.deploy.hcl
|
nomad.deploy.hcl
|
||||||
deployment.properties
|
deployment.properties
|
||||||
|
var/download/*
|
||||||
|
|||||||
@@ -36,8 +36,6 @@ services:
|
|||||||
build:
|
build:
|
||||||
dockerfile: docker/Dockerfile.worker
|
dockerfile: docker/Dockerfile.worker
|
||||||
context: .
|
context: .
|
||||||
args:
|
|
||||||
APP_VERSION: latest
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- $PWD:/app
|
- $PWD:/app
|
||||||
@@ -45,14 +43,11 @@ services:
|
|||||||
tty: true
|
tty: true
|
||||||
environment:
|
environment:
|
||||||
TZ: America/Chicago
|
TZ: America/Chicago
|
||||||
command: --download 2 --async
|
|
||||||
|
|
||||||
scheduler:
|
scheduler:
|
||||||
build:
|
build:
|
||||||
dockerfile: docker/Dockerfile.worker
|
dockerfile: docker/Dockerfile.scheduler
|
||||||
context: .
|
context: .
|
||||||
args:
|
|
||||||
APP_VERSION: latest
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- $PWD:/app
|
- $PWD:/app
|
||||||
|
|||||||
@@ -13,8 +13,6 @@ services:
|
|||||||
- /mnt/media/downloads/tvshows:/var/download/tvshows
|
- /mnt/media/downloads/tvshows:/var/download/tvshows
|
||||||
- mercure_data:/data
|
- mercure_data:/data
|
||||||
- mercure_config:/config
|
- mercure_config:/config
|
||||||
depends_on:
|
|
||||||
- database
|
|
||||||
|
|
||||||
|
|
||||||
worker:
|
worker:
|
||||||
@@ -22,36 +20,21 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- /mnt/media/downloads/movies:/var/download/movies
|
- /mnt/media/downloads/movies:/var/download/movies
|
||||||
- /mnt/media/downloads/tvshows:/var/download/tvshows
|
- /mnt/media/downloads/tvshows:/var/download/tvshows
|
||||||
restart: always
|
|
||||||
# command: -vv --time-limit=3600 --limit=10
|
|
||||||
deploy:
|
deploy:
|
||||||
replicas: 2
|
replicas: 2
|
||||||
depends_on:
|
depends_on:
|
||||||
- app
|
- app
|
||||||
|
|
||||||
#
|
|
||||||
# scheduler:
|
|
||||||
# image: registry.caldwell.digital/home/torsearch-scheduler:${TAG}
|
|
||||||
# volumes:
|
|
||||||
# - /mnt/media/downloads/movies:/var/download/movies
|
|
||||||
# - /mnt/media/downloads/tvshows:/var/download/tvshows
|
|
||||||
# restart: always
|
|
||||||
# command: -vv
|
|
||||||
# depends_on:
|
|
||||||
# - app
|
|
||||||
|
|
||||||
|
scheduler:
|
||||||
redis:
|
image: registry.caldwell.digital/home/torsearch-scheduler:${TAG}
|
||||||
image: redis:latest
|
|
||||||
volumes:
|
volumes:
|
||||||
- redis_data:/data
|
- /mnt/media/downloads/movies:/var/download/movies
|
||||||
command: redis-server --maxmemory 512MB
|
- /mnt/media/downloads/tvshows:/var/download/tvshows
|
||||||
restart: unless-stopped
|
depends_on:
|
||||||
|
- app
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
mysql:
|
|
||||||
mercure_config:
|
mercure_config:
|
||||||
mercure_data:
|
mercure_data:
|
||||||
redis_data:
|
|
||||||
|
|
||||||
|
|||||||
@@ -27,3 +27,9 @@ RUN mkdir -p /etc/supervisor/conf.d
|
|||||||
# We start supervisord and supervisord starts
|
# We start supervisord and supervisord starts
|
||||||
# respective service in the configuration file.
|
# respective service in the configuration file.
|
||||||
ENTRYPOINT ["/app/bin/console", "init:worker"]
|
ENTRYPOINT ["/app/bin/console", "init:worker"]
|
||||||
|
|
||||||
|
# Message transports can be enabled by passing them as command options.
|
||||||
|
# Inlcluding a number with the option will start that amount of processes
|
||||||
|
# for the transport. Not supplying a number will default to 1.
|
||||||
|
# --download --monitor OR --download 2 --monitor
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,21 @@
|
|||||||
FROM code.caldwell.digital/home/torsearch-base-worker:php8.4-alpine
|
###
|
||||||
|
# This version of Torsearch can run the scheduler, downloader, and
|
||||||
|
# worker in one container. Each process is managerd by supervisord
|
||||||
|
# and can be configured via environment variables, and more than
|
||||||
|
# one of these containers can still be run.
|
||||||
|
###
|
||||||
|
|
||||||
ARG APP_VERSION="0.0.0-dev"
|
# Default to latest, but should pass in a version
|
||||||
ENV APP_VERSION="${APP_VERSION}"
|
ARG APP_VERSION="latest"
|
||||||
|
|
||||||
COPY . /app
|
# Start with our base worker image
|
||||||
|
FROM code.caldwell.digital/home/torsearch-base-worker-supervisord:latest
|
||||||
|
|
||||||
ENTRYPOINT [ "php", "/app/bin/console", "messenger:consume", "scheduler_monitor" ]
|
# Set the APP_VERSION in the image
|
||||||
|
ENV APP_VERSION=${APP_VERSION}
|
||||||
|
|
||||||
HEALTHCHECK --interval=3s --timeout=3s --retries=10 CMD return 0
|
# Copy the actual application code from the previously built app
|
||||||
|
COPY --chown=1000:1000 ./ /app
|
||||||
|
|
||||||
|
# To retain backwards compatibility, default to async & download transports
|
||||||
|
CMD [ "--async", "--download" ]
|
||||||
|
|||||||
@@ -1,26 +1,21 @@
|
|||||||
###
|
###
|
||||||
# This version of Torsearch runs the scheduler, downloader, and worker
|
# This version of Torsearch can run the scheduler, downloader, and
|
||||||
# in this one container. Each process is managerd by supervisord
|
# worker in one container. Each process is managerd by supervisord
|
||||||
# and can be configured via environment variables and more
|
# and can be configured via environment variables, and more than
|
||||||
# than one of these containers cans till be run.
|
# one of these containers can still be run.
|
||||||
###
|
###
|
||||||
|
|
||||||
|
# Default to latest, but should pass in a version
|
||||||
ARG APP_VERSION="latest"
|
ARG APP_VERSION="latest"
|
||||||
|
|
||||||
FROM code.caldwell.digital/home/torsearch-app:${APP_VERSION} AS base_image
|
# Start with our base worker image
|
||||||
|
|
||||||
|
|
||||||
FROM code.caldwell.digital/home/torsearch-base-worker-supervisord:latest
|
FROM code.caldwell.digital/home/torsearch-base-worker-supervisord:latest
|
||||||
|
|
||||||
|
# Set the APP_VERSION in the image
|
||||||
ENV APP_VERSION=${APP_VERSION}
|
ENV APP_VERSION=${APP_VERSION}
|
||||||
|
|
||||||
COPY --from=base_image --chown=1000:1000 /app /app
|
# Copy the actual application code from the previously built app
|
||||||
COPY docker/ /app/docker
|
COPY --chown=1000:1000 ./ /app
|
||||||
|
|
||||||
# We start supervisord and supervisord starts
|
# To retain backwards compatibility, default to async & download transports
|
||||||
# respective service in the configuration file.
|
CMD [ "--async", "--download" ]
|
||||||
ENTRYPOINT ["/app/bin/console", "init:worker"]
|
|
||||||
|
|
||||||
# Message transports can be enabled by passing them as command options.
|
|
||||||
# Inlcluding a number with the option will start that amount of processes
|
|
||||||
# for the transport. Not supplying a number will default to 1.
|
|
||||||
# --download --monitor OR --download 2 --monitor
|
|
||||||
|
|||||||
Reference in New Issue
Block a user