<commit_before># Docksal

Docker and Docker Compose based environment for web development.

!!! attention "Docksal is under active development" 
    Breaking changes and outdated docs are very possible. Please help us by testing, submitting issues and pull requests. Thanks!


## Examples of preconfigured Docksal powered projects

Running a complete LAMP stack for Drupal, WordPress or a pure HTML/PHP base website is two commands away!<sup>*</sup>

```
git clone <sample-project-repo>
fin init
```

Try one of the preconfigured projects:

- [Drupal 7 sample project](https://github.com/docksal/drupal7)  
- [Drupal 8 sample project](https://github.com/docksal/drupal8)  
- [WordPress sample project](https://github.com/docksal/wordpress)

<sup>*</sup>Once you are done with a one-time [Docksal environment setup](/docs/env-setup.md)

<a name="setup"></a>
## Setup

Please review [system requirements](/docs/system-requirements.md) before proceeding with the setup.

1. [Docksal environment setup](/docs/env-setup.md)
    
    This is done **one time per host** and should be performed by everyone.

2. [Configure a project to use Docksal](/docs/project-setup.md)

    This is done **one time per project** and should be performed by the project TL.

<a name="fin"></a>
## Docksal Fin (fin)

Docksal Fin is a command line tool to control Docksal's stack. `fin` runs natively on Mac and Linux and requires [Babun Shell](http://babun.github.io) on Windows.

## Docksal Stack

Each project contains at least 3 services:

- `web` - holds your webserver (nginx/apache/etc.)
- `db` - holds database server (MySQL)
- `cli` - container that is meant to serve as a single console access point to all necessary command line tools. You can access it with `fin bash`. For the list of tools available inside **cli** check [CLI image docs](https://github.com/docksal/service-cli)

<a name="updates"></a>
## Updates

### Regular updates

```
fin update
```

<a name="instructions"></a>
## Instructions and tutorials

### Advanced configuration
- [Running multiple projects](/docs/multiple-projects.md)
- [Drupal settings](/docs/drupal-settings.md)
- [MySQL DB access for external tools](/docs/db-access.md)
- [Overriding default PHP/MySQL/etc. settings](/docs/settings.md)
- [Automatic database import](docs/db-import.md)
- [DB sandbox mode](/docs/db-sandbox.md)
- [Extending fin with custom commands](/docs/custom-commands.md)
- [Increasing vm memory (RAM)](/docs/vm.md)
- [Exposing any Docker container's port](/docs/expose-port.md)

### Using third party utililies
- [Debugging with Xdebug and PhpStorm](/docs/xdebug.md)
- [Using custom ssh keys (with or without passwords) via ssh-agent](/docs/ssh-agent.md)
- [Sending and capturing e-mail](/docs/mail.md)
- [Using Sass](/docs/sass.md)
- [Using PHP Code Sniffer (phpcs, phpcbf)](/docs/phpcs.md)
- [Enabling Varnish support](/docs/varnish.md)
- [Enabling Apache Solr support](/docs/apache-solr.md)
- [Using Blackfire profiler](/docs/blackfire.md)
- [Using Behat](/docs/behat.md)
- [Public access via ngrok](/docs/public-access.md)

<a name="troubleshooting"></a>
## Troubleshooting

!!! attention "If something went wrong" 
    First try these quick fix steps in the order listed below. Check if the issue has cleared out **after each step**.

- Update Docksal to the latest version. See [updates](#updates) section.
- (Mac and Windows) Restart the Docksal VM: `fin vm restart`
- Reset Docksal system services with `fin reset system` and restart projects containers with `fin up`<commit_msg>Update index.md<commit_after># Docksal

Docker and Docker Compose based environment for web development.

!!! attention "Docksal is under active development" 
    Breaking changes and outdated docs are very possible. Please help us by testing, submitting issues and pull requests. Thanks!


## Examples of preconfigured Docksal powered projects

Running a complete LAMP stack for Drupal, WordPress or a pure HTML/PHP base website is two commands away!<sup>*</sup>

```
git clone <sample-project-repo>
fin init
```

Try one of the preconfigured projects:

- [Drupal 7 sample project](https://github.com/docksal/drupal7)  
- [Drupal 8 sample project](https://github.com/docksal/drupal8)  
- [WordPress sample project](https://github.com/docksal/wordpress)

<sup>*</sup>Once you are done with a one-time [Docksal environment setup](/docs/env-setup.md)

<a name="setup"></a>
## Setup

Please review [system requirements](/docs/system-requirements.md) before proceeding with the setup.

1. [Docksal environment setup](/docs/env-setup.md)
    
    This is done **one time per host** and should be performed by everyone.

2. [Configure a project to use Docksal](/docs/project-setup.md)

    This is done **one time per project** and should be performed by the project TL.

<a name="fin"></a>
## Docksal Fin (fin)

Docksal Fin is a command line tool to control Docksal's stack. `fin` runs natively on Mac and Linux and requires [Babun Shell](http://babun.github.io) on Windows.

## Docksal Stack

Each project contains at least 3 services:

- `web` - holds your webserver (nginx/apache/etc.)
- `db` - holds database server (MySQL)
- `cli` - container that is meant to serve as a single console access point to all necessary command line tools. You can access it with `fin bash`. For the list of tools available inside **cli** check [CLI image docs](https://github.com/docksal/service-cli)

<a name="updates"></a>
## Updates

### Regular updates

```
fin update
```

<a name="instructions"></a>
## Instructions and tutorials

### Advanced configuration
- [Running multiple projects](/docs/multiple-projects.md)
- [Drupal settings](/docs/drupal-settings.md)
- [MySQL DB access for external tools](/docs/db-access.md)
- [Overriding default PHP/MySQL/etc. settings](/docs/settings.md)
- [Automatic database import](docs/db-import.md)
- [DB sandbox mode](/docs/db-sandbox.md)
- [Extending fin with custom commands](/docs/custom-commands.md)
- [Increasing vm memory (RAM)](/docs/vm.md)
- [Exposing any Docker container's port](/docs/expose-port.md)

### Using third party utililies
- [Debugging with Xdebug and PhpStorm](/docs/xdebug.md)
- [Using custom ssh keys (with or without passwords) via ssh-agent](/docs/ssh-agent.md)
- [Sending and capturing e-mail](/docs/mail.md)
- [Using SASS/Compass](/docs/sass.md)
- [Using PHP Code Sniffer (phpcs, phpcbf)](/docs/phpcs.md)
- [Enabling Varnish support](/docs/varnish.md)
- [Enabling Apache Solr support](/docs/apache-solr.md)
- [Using Blackfire profiler](/docs/blackfire.md)
- [Using Behat](/docs/behat.md)
- [Public access via ngrok](/docs/public-access.md)

<a name="troubleshooting"></a>
## Troubleshooting

!!! attention "If something went wrong" 
    First try these quick fix steps in the order listed below. Check if the issue has cleared out **after each step**.

- Update Docksal to the latest version. See [updates](#updates) section.
- (Mac and Windows) Restart the Docksal VM: `fin vm restart`
- Reset Docksal system services with `fin reset system` and restart projects containers with `fin up`
{'fraction_non_alphanumeric': 0.12673267326732673, 'fraction_numerical': 0.0019801980198019802, 'mean_word_length': 4.3245481927710845, 'pattern_counts': {'":': 0, '<': 33, '<?xml version=': 0, '>': 33, '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': '4757903', 'n_tokens_mistral': 2253, 'n_tokens_neox': 2180, 'n_words': 776}