close

Filter

loading table of contents...

Blueprint Developer Manual / Version 2010

Table Of Contents

4.3.3 Local Docker Test System

With a local docker test system, you only have to start it correctly and then it’s the same as above.

  1. Prepare your global/deployment/docker/blueprint/.env file

    • Make sure compose/development.yml is included in the COMPOSE_FILE variable, it is required to expose the container internal ports to the docker host.

    • Make sure compose/development-local.yml is included in the COMPOSE_FILE variable, it is required for content import from blueprint and optionally for loading licenses from local coremedia-licenses directory.

  2. Prepare your licenses

    Place them at deployment/coremedia-licenses with the correct names, that is cms-license.zip (offline)

  3. Prepare your /etc/hosts or %windir%\system32\drivers\etc\hosts file, you will find the documentation in the global/deployment/docker/README.adoc.

  4. Start the engine

    cd global/deployment/docker docker-compose up -d
Shrink the setup to your needs

If you hesitate to start the whole stack, shrink it, it is simple.

  1. List all services

    cd global/deployment/docker
    docker-compose config --services
  2. From the list of services make a space separated list of services you want to start and put them in an environment variable, that is,

    export DC_DB="mongodb mysql"
    export DC_MANAGEMWENT_BACKEND="${DC_DB} solr content-management-server \
           workflow-server content-feeder caefeeder-preview user-changes \
           elastic-worker studio-server"
    export DC_PUBLICATION_BACKEND="master-live-server caefeeder-live"
    export DC_PREVIEW="cae-preview studio-client traefik"
    export DC_LIVE="cae-live" export DC_CONTENT=management-tools

    Now you can use this to start what you most often need:

docker-compose up -d ${DC_DB} ${DC_MANAGEMENT_BACKEND} ${DC_CONTENT} overview

overview is not a docker command but the overview service with all the links.

A different approach is to freeze the setup and then cut out everything you need.

docker-compose config > docker-compose.yml

You can then remove everything you don’t want. docker-compose.yml is ignored by git with our default .gitignore. You only have to make sure, that in your .env file

COMPOSE_FILE=docker-compose.yml

is set, otherwise the file won’t be loaded.

Of course. there are a lot of toggles for your convenience:

  • JAVA_DEBUG - default ports XXX06 for JDWP

  • FORCE_REIMPORT_CONTENT - once imported, the content won’t reimport unless forced

  • SKIP_CONTENT - same as not running the management-tools container

Having multiple backends in parallel or keep multiple backend data volumes

In order to work on multiple tasks in an interleaved mode, you may want to keep the example content of each setup and switch back and forth. In order to do so, you can use the COMPOSE_PROJECT_NAME. If set docker-compose will prefix all resources with the set value, that is, a volume will be named JIRA-55_db-data if COMPOSE_PROJECT_NAME=JIRA-55. The only thing to keep in mind with this approach is to never use the -v flag when running docker-compose down.

Search Results

Table Of Contents