diff --git a/README.md b/README.md
index 73da769..f47350b 100644
--- a/README.md
+++ b/README.md
@@ -24,8 +24,9 @@ It's like Laravel Homestead but for Docker instead of Vagrant.
- [List current running Containers](#List-current-running-Containers)
- [Close all running Containers](#Close-all-running-Containers)
- [Delete all existing Containers](#Delete-all-existing-Containers)
- - [Change the PHP Version](#Change-the-PHP-Version)
- [Use Redis in Laravel](#Use-Redis-in-Laravel)
+ - [Use custom Domain](Use-custom-Domain)
+ - [Change the PHP Version](#Change-the-PHP-Version)
- [Add/Remove a Docker Container](#AddRemove-a-Docker-Container)
- [Add Docker Images](#Add-Docker-Images)
- [Edit a Docker Container](#Edit-a-Docker-Container)
@@ -91,64 +92,71 @@ The Images links on [Docker Hub](https://hub.docker.com/u/laradock/)
1 - Install any version of Laravel, or use any of your existing Laravel projects.
-2 - Clone the LaraDock repository, inside a `docker` folder, on the root directory of your Laravel project.
+
+2 - Clone the LaraDock repository, inside a `docker` folder, on the root directory of your Laravel project:
```bash
git clone https://github.com/LaraDock/laradock.git docker
```
-3 - Find your Docker IP address.
+
+3 - Run a Docker Virtual host on your machine, if you haven't already:
-- If you are on Linux OS: your IP Address is `127.0.0.1` because the containers run directly on your localhost.
-- If you are on MAC or Windows and using the **docker-machine**: start your docker machine then type `docker-machine ip {vm-name-here}`. *(The default IP is 192.168.99.100)*
-- If you are on MAC or Windows and using **boot2docker**: type `boot2docker ip` when boot2docker is up.
+- **On Windows & MAC:** run `docker-machine start default`
-4 - Open your hosts file `/etc/hosts`.
+>If the host "default" does not exist, create it using:
+>
+>`docker-machine create -d virtualbox default`
-```bash
-sudo nano /etc/hosts
-```
+- **On Linux:** skip this step :) you don't need a virtual host, since Docker runs locally on your machine.
-5 - Map your `Docker IP` to the `laravel.dev` domain, by adding the following to the `hosts` file.
+
+4 - Find your Docker IP address:
-```bash
-xxx.xxx.xxx.xxx laravel.dev
-```
+- **On Windows & MAC:** run `docker-machine ip default`
+
+*(The default IP is 192.168.99.100)*
-Don't forget to replace the `xxx.xxx.xxx.xxx` with your Docker IP Address.
+- **On Linux:** your IP Address is `127.0.0.1`
-6 - In the new created `docker` folder in step 2, open the `docker-compose.yml` file to replace the `xxx.xxx.xxx.xxx` with your Docker IP Adress as well.
+> For **boot2docker** users: run `boot2docker ip` *(when boot2docker is up)*.
-7 - Open your Laravel's `.env` file and set the `DB_HOST` to `laravel.dev` instead of the default `127.0.0.1`.
+
+
+5 - Open your Laravel's `.env` file and set the `DB_HOST` to your `{Docker-IP}` instead of the default `127.0.0.1`:
```env
-DB_HOST=laravel.dev
+DB_HOST=xxx.xxx.xxx.xxx
```
-8 - Finally run the containers. **Make sure you are in the `docker` folder** before running this command.
+> I am representing the `{Docker-IP}` with `xxx.xxx.xxx.xxx` for the purpos of this documentation.
+
+
+6 - Finally let's run the containers. **Make sure you are in the `docker` folder** before running this command:
```bash
docker-compose up -d
```
-You can run `docker-compose up` (without **-d**) if you don't want to run the containers in the background.
+*"Note: Only the first time you run this command, it will take up to 5 minutes (depend on your connection speed) to download the Docker Images to your local machine.*
-*"Note: Only the first time you run this command, it will take up to 5 minutes (depend on your connection speed) to download the images to your local machine.*
+> Debugging: in case you faced a problem with the docker mahcine here, run this command in your current terminal session `eval "$(docker-machine env default)"`
-> Debugging: in case you faced a problem with the docker mahcine here, run this command in your current terminal session `eval "$(docker-machine env {vm-name-here})"`.
+
+7 - Open your browser and visit your `{Docker-IP}` address (`http://xxx.xxx.xxx.xxx`).
-9 - Open your browser and visit `http://laravel.dev`
-
-
-> Debugging: in case you faced an error here, it might be that you forget to provide some permissions for Laravel, so try running the following command on the Laravel root directory:
-`sudo chmod -R 777 storage && sudo chmod -R 777 bootstrap/cache`.
+> Debugging: in case you faced an error here, run this command from the Laravel root directory:
+`sudo chmod -R 777 storage && sudo chmod -R 777 bootstrap/cache`
[Follow @Mahmoud_Zalt](https://twitter.com/Mahmoud_Zalt)
+
+
+
## Documentation
@@ -180,31 +188,11 @@ docker-compose rm -f
-
-
-#### Change the PHP Version
-By default **PHP 5.6** is running.
-
-To change the default PHP version, simply open your `docker-compose.yml` file and edit this line:
-
-```yaml
-image: laradock/php56nginx:latest
-```
-Supported versions:
-
-- (PHP 5.5.*) laradock/php55nginx:latest
-- (PHP 5.6.*) laradock/php56nginx:latest
-
-
-**Note:** If you use this `laradock/phpnginx` image, it will pull from `laradock/php56nginx`.
-
-
-
#### Use Redis in Laravel
-1 - Open your Laravel's `.env` file and set the `REDIS_HOST` to `laravel.dev` instead of the default `127.0.0.1`.
+Open your Laravel's `.env` file and set the `REDIS_HOST` to `laravel.dev` instead of the default `127.0.0.1`.
```env
REDIS_HOST=laravel.dev
@@ -238,6 +226,71 @@ composer require predis/predis:^1.0
+
+
+#### Use custom Domain (instead of the Docker IP)
+
+Assuming your custom domain is `laravel.dev` and your current `Docker-IP` is `xxx.xxx.xxx.xxx`.
+
+1 - Open your `/etc/hosts` file and map your `Docker IP` to the `laravel.dev` domain, by adding the following:
+
+```bash
+xxx.xxx.xxx.xxx laravel.dev
+```
+
+2 - Open your Laravel's `.env` file and replace the `127.0.0.1` default values with your `{Docker-IP}`.
+
+Example:
+
+```env
+DB_HOST=xxx.xxx.xxx.xxx
+```
+
+3 - Open the nginx config file `docker/settings/nginx/default` and add this in the `server`:
+
+```
+server_name laravel.dev;
+```
+
+4 - Open your browser and visit `{http://laravel.dev}`
+
+
+>In case you faced any problem, try this additional step:
+>
+>Open the `docker-compose.yml` and add the following to `php-nginx:`
+>
+>```yaml
+> extra_hosts:
+> - "laravel.dev:xxx.xxx.xxx.xxx"
+>```
+
+
+> Don't forget to replace the `xxx.xxx.xxx.xxx` with your Docker IP Address.
+
+
+
+
+
+
+#### Change the PHP Version
+By default **PHP 5.6** is running.
+
+To change the default PHP version, simply open your `docker-compose.yml` file and edit this line:
+
+```yaml
+image: laradock/php56nginx:latest
+```
+Supported versions:
+
+- (PHP 5.5.*) laradock/php55nginx:latest
+- (PHP 5.6.*) laradock/php56nginx:latest
+
+
+**Note:** If you use this `laradock/phpnginx` image, it will pull from `laradock/php56nginx`.
+
+
+
+
@@ -270,6 +323,7 @@ The Log files are stored in the `docker/logs` directory.
+
#### Upgrade the Docker Images
@@ -331,3 +385,4 @@ All Docker Images can be found at [https://github.com/LaraDock](https://github.c
## License
[MIT License (MIT)](https://github.com/laradock/laradock/blob/master/LICENSE)
+[]([]())
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index a1fe310..9ec3d75 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -12,8 +12,6 @@ php-nginx:
- mysql
- redis
privileged: true
- extra_hosts:
- - "laravel.dev:xxx.xxx.xxx.xxx"
# MySQL Container #----------------------------------------
mysql:
diff --git a/settings/nginx/default b/settings/nginx/default
index c0bcbf9..a6865ea 100644
--- a/settings/nginx/default
+++ b/settings/nginx/default
@@ -5,8 +5,6 @@ server {
root /var/www/public;
index index.php index.html index.htm;
- server_name laravel.dev;
-
location / {
try_files $uri $uri/ /index.php$is_args$args;
}