Prevent skip in docker-compose
I have a
docker-compose.yml for a Django web app with a backend. It looks like this:
version: '2' services: db: image: # special image ports: - "1433:1433" environment: PASSWORD: "*********" web: build: . command: python manage.py runserver 0.0.0.0:8000 ports: - "8000:8000" depends_on: - db
When I run
sudo docker-compose build, the first line of output says
db uses an image, skipping. Building web.
I need the
db image to be built before
How can I make the
db image get built first?
One Solution collect form web for “Prevent skip in docker-compose”
You can start your
db container in Detached mode before building
$ docker-compose up -d db $ docker-compose build web
Though, this seems like an anti-pattern. I would recommended that you keep the build process for
web as generic as possible, and instead use environment variables or
command arguments to accomplish this.
For instance, if you need to pass the same configuration values to both
db, you could accomplish this using an
# db_credentials.env USER="django" PASSWORD="********" DATABASE="django_db"
And in your
services: db: # ... env_file: db_credentials.env web: # ... env_file: db_credentials.env