I've seen the following in https://www.distributedpython.com/2018/11/15/celery-docker/
Which reuses the built image I believe
services:
worker:
build: .
image: &img worker
beat:
build: .
image: *img
Since I'm using Dockerfile, I can do something like this, I see it's rebuilding the image (pip install in Dockerfile runs twice for each service)
services:
worker:
build:
context: ../../
dockerfile: ./retention/docker/celery/Dockerfile
image: &img worker
container_name: celery
# command: [celery, worker, --app=app1, --loglevel=INFO]
beat:
build:
context: ../../
dockerfile: ./retention/docker/celery/Dockerfile
image: *img
# command: [celery, beat, --app=app1, --loglevel=INFO]
How can I build just one image and reuse it?