Docker Compose installation

  1. Install Docker:

    wget -qO- https://get.docker.com/ | sh
    

    If you don’t want to run an automated script, follow the instructions outlined in their documentation: https://docs.docker.com/install/

  2. Download the Mayan EDMS Docker Compose files:

    The files are located at: https://gitlab.com/mayan-edms/mayan-edms/-/tree/master/docker/

    curl https://gitlab.com/mayan-edms/mayan-edms/-/raw/master/docker/docker-compose.yml -O
    curl https://gitlab.com/mayan-edms/mayan-edms/-/raw/master/docker/.env -O
    
  3. Launch the Mayan EDMS Docker Compose containers:

    docker compose up --detach
    

    Note

    There is no need to restart the containers after a shutdown, the containers in the Docker Compose file are set to start automatically.

Customization

  1. Update the Mayan EDMS Docker Compose file:

    Update the docker-compose.yml file directly or the .env in the same folder where the file docker-compose.yml resides. Add an entry for each of the environment variables to change.

    Note

    If you are upgrading from a previous installation that used the deployment script at https://get.mayan-edms.com or the Simple Docker installation method, you need to download or create the .env file and add at least these three lines. These will let the new Docker Compose deployment use the existing data volumes of the previous installation:

    MAYAN_APP_VOLUME=/docker-volumes/mayan-edms/media
    MAYAN_REDIS_VOLUME=/docker-volumes/mayan-edms/redis
    MAYAN_POSTGRES_VOLUME=/docker-volumes/mayan-edms/postgres
    

    Note

    If the .env file does not reside in the same folder where the docker-compose.yml is or you choose another filename for it, the option --env-file <you env file path> needs to be added to every docker compose invocation.

  2. Verify the configuration changes:

    docker compose --file docker-compose.yml --project-name mayan config
    

    This command will output the Docker Compose file, using the values of your .env file.

Additional commands

  • Invoking from and external folder:

    Note

    If you are invoking the docker compose command outside the directory where the file docker-compose.yml resides, you need to add the --file docker-compose.yml option.

  • Multiple deployments:

    Multiple deployments can be made from the same docker-compose.yml file by using the --project-name <project_name> option.

  • To view the logs of the containers:

    docker compose logs
    
  • To list the containers:

    docker compose ps --all
    
  • To terminate the containers:

    Note

    Once terminated, the containers are removed and only the data volumes remain.

    docker compose down