Note: If you are not using Git yet for your project, you can use `git clone` instead of `git submodule `.
*To keep track of your Laradock changes, between your projects and also keep Laradock updated [check these docs](/documentation/#keep-track-of-your-laradock-changes)*
Note: If you are not using Git yet for your project, you can use `git clone` instead of `git submodule`.
_To keep track of your Laradock changes, between your projects and also keep Laradock updated [check these docs](/documentation/#keep-track-of-your-laradock-changes)_
Your folder structure should look like this:
...
...
@@ -53,12 +50,13 @@ Your folder structure should look like this:
+ laradock-b
```
*(It's important to rename the laradock folders to unique name in each project, if you want to run laradock per project).*
_(It's important to rename the laradock folders to unique name in each project, if you want to run laradock per project)._
> **Now jump to the [Usage](#Usage) section.**
<aname="A2"></a>
### A.2) Don't have a PHP project yet:
[]()
## A.2) Don't have a PHP project yet:
1 - Clone this repository anywhere on your machine:
...
...
@@ -84,19 +82,20 @@ cp env-example .env
At the top, change the `APPLICATION` variable to your project path.
```
APPLICATION=../project-z/public/
APPLICATION=../project-z/
```
Make sure to replace `project-z` with your project folder name.
> **Now jump to the [Usage](#Usage) section.**
[]()
## B) Setup for Multiple Projects:
<aname="B"></a>
### B) Setup for Multiple Projects:
> (Follow these steps if you want a single Docker environment for all your project)
1 - Clone this repository anywhere on your machine (similar to [Steps A.2. from above](#A2)):
1 - Clone this repository anywhere on your machine (similar to [Steps A.2\. from above](#A2)):
@@ -127,25 +126,20 @@ You can rename the config files, project folders and domains as you like, just m
> **Now jump to the [Usage](#Usage) section.**
[]()
<aname="Usage"></a>
## Usage
# Usage
**Read Before starting:**
If you are using **Docker Toolbox** (VM), do one of the following:
- Upgrade to Docker [Native](https://www.docker.com/products/docker) for Mac/Windows (Recommended). Check out [Upgrading Laradock](/documentation/#upgrading-laradock)
- Use Laradock v3.\*. Visit the [Laradock-ToolBox](https://github.com/laradock/laradock/tree/Laradock-ToolBox) branch. *(outdated)*
- Use Laradock v3.*. Visit the [Laradock-ToolBox](https://github.com/laradock/laradock/tree/Laradock-ToolBox) branch. _(outdated)_
<br>
>**Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
>**Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
<br>
...
...
@@ -157,7 +151,6 @@ cp env-example .env
You can edit the `.env` file to chose which software's you want to be installed in your environment. You can always refer to the `docker-compose.yml` file to see how those variables are been used.
2 - Build the enviroment and run it using `docker-compose`
In this example we'll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:
...
...
@@ -168,11 +161,9 @@ docker-compose up -d nginx mysql
**Note**: The `workspace` and `php-fpm` will run automatically in most of the cases, so no need to specify them in the `up` command. If you couldn't find them running then you need specify them as follow: `docker-compose up -d nginx php-fpm mysql workspace`.
You can select your own combination of containers form [this list](http://laradock.io/introduction/#supported-software-images).
*(Please note that sometimes we forget to update the docs, so check the `docker-compose.yml` file to see an updated list of all available containers).*
_(Please note that sometimes we forget to update the docs, so check the `docker-compose.yml` file to see an updated list of all available containers)._
<br>
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, ...)
...
...
@@ -181,7 +172,7 @@ You can select your own combination of containers form [this list](http://larado
docker-compose exec workspace bash
```
*Alternatively, for Windows PowerShell users: execute the following command to enter any running container:*
_Alternatively, for Windows PowerShell users: execute the following command to enter any running container:_
*You can change the PUID (User id) and PGID (group id) variables from the `.env` file)*
_You can change the PUID (User id) and PGID (group id) variables from the `.env` file)_
<br>
4 - Update your project configurations to use the database host
...
...
@@ -204,9 +195,7 @@ Open your PHP project's `.env` file or whichever configuration file you are read
DB_HOST=mysql
```
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
_If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel)._
<br>
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.dev/` and `http://project-2.dev/`. But first don't