Available Configuration¶
ISLE Docker Compose has a single configuration file, .env
. Within it, here
is all the values you can set and their effects. This list is subjectively sorted
in order of importance and usefulness.
ENVIRONMENT¶
Setting the ENVIRONMENT
changes how your docker-compose.yml
file gets constructed. When you
switch from a demo to development to production environment, this is the variable to change.
Available values for this setting are
demo
- For demo environments where you do not need access to the codebaselocal
- For development environments where you need edit the codebasecustom
- For production environments where your codebase gets baked into a custom container
By default, this is set to demo
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
DOMAIN¶
What domain your Islandora site will be available at. If you are deploying anywhere other than your personal machine, you'll probably want to change this.
By default, this is set to islandora.traefik.me
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
Changing this after installation has consequences
If you are indexing RDF metadata in Fedora and/or a triplestore, please be aware of the implications of changing this once you have installed. By changing your domain, all of the subjects of your triples will be incorrect and you will have to reindex. There are make
commands to streamline this process, but if you have lots of data it can potentially be costly in terms of time and effort.
REPOSITORY¶
Repository to use for pulling isle-buildkit images.
By default, this is set to islandora
. Change to local
to use images you have built locally with isle-buildkit,
or use your custom docker registry if you have set up one.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
TAG¶
The version of the isle-buildkit
images to use. Non isle-buildkit
images have their versions specified explicitly
in their respective docker-compose files.
By default, this is set to the latest stable release of isle-buildkit
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
USE_SECRETS¶
Whether or not you want to use secrets. For demo and development environments, secrets are not required. They are essential if you are running a production environment, though.
Secrets are contained in the secrets
folder within your isle-dc
installation. Each file represents
an individual secret, and its contents are the value you're trying to protect.
Available values for this setting are:
true
false
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
DRUPAL_INSTALL_PROFILE¶
Which install profile to use when making an initial installation. Valid values for this setting are the machine names of any Drupal profile.
By default, this is set to standard
.
INSTALL_EXISTING_CONFIG¶
Set this to true
if you want to install an existing Drupal site whose configuration was exported with
drush config:export
Available values for this setting are
- true
- false
By default, this is set to false
.
If you set this to true
, be sure to set DRUPAL_INSTALL_PROFILE
to minimal
.
INCLUDE_WATCHTOWER_SERVICE¶
Whether or not to include Watchtower as a service. When developing isle-buildkit
, this is extremely useful and
will auto-deploy new containers as you make changes. You should not use watchtower on production environments, though.
Available values for this setting are
- true
- false
By default, this is set to true
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
INCLUDE_ETCD_SERVICE¶
Whether or not to include etcd
as a service.
Available values for this setting are
- true
- false
By default, this is set to false
. If you don't know what etcd
is, then leave this be.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
INCLUDE_CODE_SERVER_SERVICE¶
Whether or not to include the coder
IDE as a service. If you're developing on Islandora, this can
be pretty useful when developing. You should not deploy this service on production environments.
Available values for this setting are
- true
- false
By default, this is set to false
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
DRUPAL_DATABASE_SERVICE¶
Which database engine to use for Drupal.
Available values are - mariadb - postgres
By default, this value is set to mariadb
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
Changing this after installation has consequences
If you are changing from mariadb to postgres or vice versa, you MUST migrate your data yourself. ISLE will not convert your database from one to the other, and it's generally not advised to change this once you've installed.
FCREPO_DATABASE_SERVICE¶
Which database engine to use for Fedora.
Available values are - mariadb - postgres
By default, this value is set to mariadb
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
Changing this after installation has consequences
If you are changing from mariadb to postgres or vice versa, you MUST migrate your data yourself. ISLE will not convert your database from one to the other, and it's generally not advised to change this once you've installed.
COMPOSE_HTTP_TIMEOUT¶
Sometimes when bringing up containers, you can encounter timeouts with an error like this:
ERROR: An HTTP request took too long to complete. Retry with --verbose to obtain debug information.
If you encounter this issue regularly because of slow network conditions, consider setting COMPOSE_HTTP_TIMEOUT to a higher value (current value: XXX).
By default, this value is set to 480, but if you have slow network conditions and encounter this error, consider bumping it higher.
COMPOSE_PROJECT_NAME¶
Used for naming services in traefik as well as defining network alias and urls. For example the drupal
service will be found at
${COMPOSE_PROJECT_NAME}_drupal_1
. This is useful to change if you are running multiple ISLE instances on one machine.
By default, this value is set to isle-dc
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
COMPOSE_DOCKER_CLI_BUILD¶
Allows building your custom image when setting ENVIRONMENT=custom
By default, this is set to 1.
You most likely will never have a need to change this.
DOCKER_BUILDKIT¶
Instructs Docker to use buildkit when building your custom image.
By default, this is set to 1.
You most likely will never have a need to change this. Trust us, you want buildkit.
PROJECT_DRUPAL_DOCKERFILE¶
The name of the Dockerfile to use after setting ENVIRONMENT=custom
.
By default, this is set to Dockerfile
.
You most likely will never have a need to change this.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.
DISABLE_SYN¶
Set this to true
to disable JWT authentication for Fedora. This is necessary
when performing a Fedora import using their import/export tools.
By default, this is set to false
.
FEDORA_6¶
Whether or not to use Fedora 6. If you set this to false
, you will be given Fedora 5.
In general, unless you already have an existing site on Fedora 5, you'll want Fedora 6.
By default, this is set to true
.
If you change this setting, you need to make -B docker-compose.yml
to generate a new docker-compose.yml
file that contains the changes you've made.