Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add basic support for Docker + Compose, refs #9406 #275

Closed
wants to merge 1 commit into from

Conversation

sevein
Copy link
Member

@sevein sevein commented Feb 4, 2016

Redmine: https://projects.artefactual.com/issues/9406

Usage

You need a Docker host (Engine) or a cluster (Swarm) and Docker Compose in order to orchestrate all the containers.

Docker Machine can assist you to easily deploy Docker hosts locally or using virtual machines or even remotely (cloud or bare-metal). There is also a bundle with all the tools included available for Windows and OSX users: Docker Toolbox.

Our default environment is described in docker-compose.dev.yml, which is meant to be used by developers. Production environments can differ significantly in the way they are composed based on your resources. We may provide some examples in the future, but that's not in the scope of this pull request.

Once the dependencies are installed, check out the repository and run:

$ cd docker/
$ docker-compose -f docker-compose.dev.yml up -d
$ docker-compose -f docker-compose.dev.yml exec atom php symfony tools:purge --demo
$ docker-compose -f docker-compose.dev.yml exec atom make -C /atom/src/plugins/arDominionPlugin
$ docker-compose -f docker-compose.dev.yml restart atom_worker

Environment variables

When you start the artefactual/atom image, you can adjust a number of settings passing environment variables on the docker run command line or via the Docker Compose file.

Name Default
ATOM_DEVELOPMENT_MODE Off
ATOM_ELASTICSEARCH_HOST Not provided
ATOM_MEMCACHED_HOST Not provided
ATOM_GEARMAND_HOST Not provided
ATOM_MYSQL_DSN Not provided
ATOM_MYSQL_USERNAME Not provided
ATOM_MYSQL_PASSWORD Not provided
ATOM_PHP_MAX_EXECUTION_TIME 120
ATOM_PHP_MAX_INPUT_TIME 120
ATOM_PHP_MEMORY_LIMIT 512M
ATOM_PHP_POST_MAX_SIZE 72M
ATOM_PHP_UPLOAD_MAX_FILESIZE 64M
ATOM_PHP_MAX_FILE_UPLOADS 20
ATOM_PHP_DATE_TIMEZONE America/Vancouver


RUN rm -rf /var/cache/apk/*

ENV FOP_VERSION 2.1
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2.1 has known issues that we need to resolve (unsponsored atm, #8675). Version 1.0 is the preferred version we instruct users to use for now.

@@ -0,0 +1,3 @@
[mysqld]
; STRICT_TRANS_TABLES disabled on purpose (culture length bug in AtoM and other potential issues?)
sql-mode="ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AtoM doesn't work in strict mode, which is the default in MySQL 5.7!

@qubot qubot closed this Apr 7, 2016
@qubot qubot deleted the dev/docker branch April 7, 2016 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants