<commit_before>---
layout: default
title: CAS - Overlay Installation
---

# WAR Overlay Installation

CAS installation is a fundamentally source-oriented process, and we recommend a
WAR overlay (1) project to organize
customizations such as component configuration and UI design.
The output of a WAR overlay build is a `cas.war` file that can be deployed to a servlet container like
[Tomcat](http://tomcat.apache.org/whichversion.html).

WAR overlay projects are provided for reference and study.

## Gradle

- [https://github.com/apereo/cas-gradle-overlay-template](https://github.com/apereo/cas-gradle-overlay-template)

## Maven

- [https://github.com/apereo/cas-overlay-template](https://github.com/apereo/cas-overlay-template)

## Docker

- See [this guide](Docker-Installation.html) for more info.

Every aspect of CAS can be controlled by
adding, removing, or modifying files in the overlay; it's also possible and indeed common to customize the behavior of
CAS by adding third-party components that implement CAS APIs as Java source files or dependency references.

## Servlet Container

CAS can be deployed to a number of servlet containers. See [this guide](Configuring-Servlet-Container.html) for more info.

## Spring Configuration<commit_msg>Update Maven-Overlay-Installation.md<commit_after>---
layout: default
title: CAS - Overlay Installation
---

# WAR Overlay Installation

CAS installation is a fundamentally source-oriented process, and we recommend a
WAR overlay (1) project to organize
customizations such as component configuration and UI design.
The output of a WAR overlay build is a `cas.war` file that can be deployed to a servlet container like
[Tomcat](http://tomcat.apache.org/whichversion.html).

WAR overlay projects are provided for reference and study.

## Gradle

- [https://github.com/apereo/cas-gradle-overlay-template](https://github.com/apereo/cas-gradle-overlay-template)

## Maven

- [https://github.com/apereo/cas-overlay-template](https://github.com/apereo/cas-overlay-template)

<div class="alert alert-info"><strong>Review Branch!</strong><p>The above repositories point you towards their <code>master</code> branch. You should always make sure the branch you are on matches the version of CAS you wish to configure and deploy. The <code>master</code> branch typically points to the latest stable release of the CAS server. Check the build configuration and if inappropriate, use <code>git branch -a</code> to see available branches, and then <code>git checkout [branch-name] to switch if necessary.</p></div>

## Docker

- See [this guide](Docker-Installation.html) for more info.
 
Every aspect of CAS can be controlled by
adding, removing, or modifying files in the overlay; it's also possible and indeed common to customize the behavior of
CAS by adding third-party components that implement CAS APIs as Java source files or dependency references.

## Servlet Container

CAS can be deployed to a number of servlet containers. See [this guide](Configuring-Servlet-Container.html) for more info.

## Spring Configuration
{'fraction_non_alphanumeric': 0.08868601238995762, 'fraction_numerical': 0.0006521030322791001, 'mean_word_length': 4.713221601489758, 'pattern_counts': {'":': 0, '<': 16, '<?xml version=': 0, '>': 16, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5527745', 'n_tokens_mistral': 843, 'n_tokens_neox': 799, 'n_words': 349}