You are here

Deploying using Docker Compose

Use this information to quickly start up Alfresco Content Services using Docker Compose. Due to the limited capabilities of Docker Compose, this deployment method is recommended for development and test environments only.

To deploy Alfresco Content Services using docker-compose, download and install Docker, then follow the steps below.

  1. Clone the repository locally or download one of the docker-compose.yml files (e.g. 6.0.N-docker-compose.yml), and then change directory to the project folder:

    git clone https://github.com/Alfresco/acs-deployment.git
    cd acs-deployment
    Note: Make sure that the following ports are free on your computer: 5432, 8080, 8082, 8083. These ports are set in the docker-compose.yml file - refer to the host:container port definitions.

    See the Alfresco/acs-deployment project README for more.

  2. Change directory to the docker-compose folder:

    cd docker-compose
  3. Deploy Alfresco Content Services, including the repository, Share, Postgres database, and Search Services:

    For example:

    docker-compose -f 6.0.N-docker-compose.yml up

    This downloads the images, fetches all the dependencies, creates each container, and then starts the system:

    Creating network "docker-compose_default" with the default driver
    ...
    Creating docker-compose_alfresco-pdf-renderer_1 ... done
    Creating docker-compose_solr6_1                 ... done
    Creating docker-compose_postgres_1              ... done
    Creating docker-compose_imagemagick_1           ... done
    Creating docker-compose_libreoffice_1           ... done
    Creating docker-compose_share_1                 ... done
    Creating docker-compose_alfresco_1              ... done
    Attaching to docker-compose_postgres_1, docker-compose_solr6_1, docker-compose_alfresco-pdf-renderer_1, docker-compose_imagemagick_1, docker-compose_alfresco_1, docker-compose_libreoffice_1, docker-compose_share_1
    ...

    As an alternative, you can also start the containers in the background by running docker-compose up -d.

  4. Wait for the logs to complete, showing messages:

    ...
    alfresco_1 | 2018-08-28 08:40:30,386  INFO  [management.subsystems.ChildApplicationContextFactory] [http-nio-8080-exec-10] Starting 'Transformers' subsystem, ID: [Transformers, default]
    alfresco_1 | 2018-08-28 08:40:30,661  INFO  [management.subsystems.ChildApplicationContextFactory] [http-nio-8080-exec-10] Startup of 'Transformers' subsystem, ID: [Transformers, default] complete

    If you encounter errors whilst the system is starting up:

    • Stop the session by using CONTROL+C.
    • Remove the containers (using the --rmi all option):
      docker-compose down --rmi all
    • Try allocating more memory resources, as advised in docker-compose.yml. For example, in Docker, change the memory setting in Preferences (or Settings) > Advanced > Memory, to at least 8 GB. Make sure you restart Docker and wait for the process to finish before continuing.
    • Go back to step 3 (above) to start the deployment again.
    Note: Keep in mind that 8 GB is much lower than the required minimum, and may need to be adapted for your environment. You'll need a machine with at least 13GB of memory to distribute among the Docker containers.
  5. Open your browser and check everything starts up correctly:

    • Share: http://localhost:8080/share
    • REST APIs and administration: http://localhost:8082/alfresco
    • Search administration: http://localhost:8083/solr
  6. Log in as the admin user. Enter the default administrator password admin.

You can use a number of commands to check that the system started correctly. See Checking system start up for more.

See the Alfresco/acs-deployment GitHub project documentation for the prerequisites and detailed setup: Docker Compose deployment

In this project, you can use the docker-compose.yml file following the documentation for standard installations.

To modify your development environment, for example to change or mount files in the existing images, you'll have to create new custom Docker images (recommended approach). The same approach applies if you want to install AMP files into the repository and Share images. See the Customization Guidelines for more.

Sending feedback to the Alfresco documentation team

You don't appear to have JavaScript enabled in your browser. With JavaScript enabled, you can provide feedback to us using our simple form. Here are some instructions on how to enable JavaScript in your web browser.