Skip to content
Snippets Groups Projects
README.md 2.88 KiB
Newer Older
jurgenhaas's avatar
jurgenhaas committed
# LakeDropsDrupalDev - L3D
jurgenhaas's avatar
jurgenhaas committed

Provides fully configured Docker images for local Drupal development where your local host requires nothing else than Docker being installed but no PHP, Composer or any other tool on this planet. It simply works.
jurgenhaas's avatar
jurgenhaas committed

## Prerequisites
Nothing else than docker and this [script](https://gitlab.lakedrops.com/docker/l3d/raw/master/l3d) being installed on your host. You don't need any other tool - none!
Ideally you download that script and copy that to a directory in your search path (e.g. `/usr/local/bin`), then it will be available for all your Drupal projects.
You can execute the following commands:

```bash
sudo wget -O /usr/local/bin/l3d https://gitlab.lakedrops.com/docker/l3d/raw/master/l3d
sudo chmod +x /usr/local/bin/l3d
```

## Quick start
jurgenhaas's avatar
jurgenhaas committed

Go to the project root for which you want to use **L3D** and execute the downloaded script (simply type `l3d` at the command prompt). It will ask you for the PHP version to be used (input `7.0`, `7.1` or `7.2`) and it will download the matching L3D image and start a container for you.
jurgenhaas's avatar
jurgenhaas committed

jurgenhaas's avatar
jurgenhaas committed

Inside the container you'll find the directory `/drupal` which contains everything from your project's root. You can work from there by using these available tools:
jurgenhaas's avatar
jurgenhaas committed

| Tool | Command | Shortcut |
| --- | --- | --- |
| Ahoy | `ahoy` | `a` |
| Composer | `composer` | `c` |
| Docker | `docker` | |
| Docker Composer | `docker-compose` | `d-c` |
| DorgFlow | `dorgflow` | |
| Drush | `drush` | `d` |
jurgenhaas's avatar
jurgenhaas committed

## Update the image
jurgenhaas's avatar
jurgenhaas committed

When starting **L3D** with the script this will simply re-use the latest available image in your local docker environment. To force your docker to download the latest version of an image you can use `l3d update` which will also start the working container for you but check for an updated version of the image first.

## Update the start script

Just call `l3d selfupdate` and the start script will be updated from the original repository.

## Working with Git credentials

In order to commit and push with git you have to at least configure your email address and username for the git client. If you configure those globally on your host, each of the **L3D** containers will inherit those settings and there is nothing that needs to be done inside the container.

To configure those credentials, use these commands:

```bash
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
```

## Getting help

Calling `l3d help` displays information about **L3D** and provides a link to further details.

## Examples

### Start a new project

```bash
cd /var/www
mkdir testproject1
cd testproject1
l3d
wget https://gitlab.lakedrops.com/composer/project/drupal-8/raw/master/.gitignore
wget https://gitlab.lakedrops.com/composer/project/drupal-8/raw/master/composer.json
composer create-project --no-interaction
ahoy d4d up
```

### Use with an existing project

```bash
cd /path/to/your/project
l3d
composer update
```