Laradock als Laravel Entwicklungsumgebung

 Mit Laradock einfach eine Laravel Entwicklungsumgebung starten

Docker Basics

Docker ermöglicht es, Services oder Applikationen per Befehl in einem sogenannten Container zu starten.
Ein Container ist eine vom Betriebssystem (OS) unabhängige isolierte Umgebung:
Beim ersten Start eines Containers, lädt Docker selbstständig alle notwendigen Quellen
aus dem Internet.
Docker kann unter Windows, macOS oder einer Linux-Distribution installiert werden,
siehe auch: Docker

Download und initiales Setup

git clone https://github.com/Laradock/laradock.git
cp env-example .env
mkdir ../laradock_www

 

Sollten bestimmte Port bereits belegt sein, können diese einfach in der .env Datei geändert werden.

z.B.:

APP_CODE_PATH_HOST=../laradock_www...
### NGINX #################################################
NGINX_HOST_HTTP_PORT=90
NGINX_HOST_HTTPS_PORT=444...
### PHP MY ADMIN ##########################################
# Accepted values: mariadb - mysql
PMA_DB_ENGINE=mariadb
# Credentials/Port:
PMA_USER=defaultPMA_PASSWORD=secret
PMA_ROOT_PASSWORD=secret
PMA_PORT=8082
sudo docker-compose up -d nginx mariadb phpmyadmin redis workspace

  

Laravel download und anpassen

In den Container wechseln:

docker-compose exec workspace bash

Befehle im Container: Laravel downloaden und installieren

cd ..
composer create-project laravel/laravel www
cd www
chmod 777 -R ./storage
npm install npm
npm run dev

.env Datei im www-Ordner:

DB_CONNECTION=mysql
DB_HOST=mariadb
DB_PORT=3306
DB_DATABASE=default
DB_USERNAME=default
DB_PASSWORD=secret
BROADCAST_DRIVER=redis
CACHE_DRIVER=redis
QUEUE_CONNECTION=sync
SESSION_DRIVER=redis
SESSION_LIFETIME=120
REDIS_HOST=redis
REDIS_PASSWORD=null
REDIS_PORT=6379

dann wieder in der workspace bash

composer require predis/predisphp artisan migrate

Verschiedene Sites in nginx

in der nginx-Konfig k√∂nnen verschiedene Ordner und deren Test-URL angelegt werden, dabei habe ich f√ľr jede Testseite folgendes Konfigfile angelegt:

Ordner: laradock/nginx/sites/

server {

    listen 80;
    listen [::]:80;

    # For https
    # listen 443 ssl;
    # listen [::]:443 ssl ipv6only=on;
    # ssl_certificate /etc/nginx/ssl/default.crt;
    # ssl_certificate_key /etc/nginx/ssl/default.key;

    server_name DOMAINNAME.test;
    root /var/www/FOLDER/public;
    index index.php index.html index.htm;

    location / {
         try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ \.php$ {
        try_files $uri /index.php =404;
        fastcgi_pass php-upstream;
        fastcgi_index index.php;
        fastcgi_buffers 16 16k;
        fastcgi_buffer_size 32k;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        #fixes timeouts
        fastcgi_read_timeout 600;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }

    location /.well-known/acme-challenge/ {
        root /var/www/letsencrypt/;
        log_not_found off;
    }

    error_log /var/log/nginx/laravel_error.log;
    access_log /var/log/nginx/laravel_access.log;
}

Domainname und Folder m√ľssen an dieser Stelle nat√ľrlich angepasst werden.

PHP 7.3 - Version ändern

Die PHP-Version kann durch Anpassen der .env Datei geändert werden. Im Anschluss muss php-fpm neu erstellt werden:

docker-compose build php-fpm

Workspace.sh

#bin bash!
cd /docker/laradock && docker-compose exec workspace bash

ENVOY PATH

PATH=$PATH:~/.composer/vendor/bin
positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE f√ľr deine Bewertung!

Aktualisiert: 11.04.2020 von Bernhard ūüĒĒ


Top-Artikel in diesem Bereich


ioBroker installieren - Docker
Mit ioBroker können verschiedene Automatisierungslösungen oder Geräte in einem System zusammengefasst werden. Um bestimmte Gateways oder Geräte ansprechen zu können, werden in ioBroker verschiedene Adapter verwendet.

Home-Assistant Docker Conbee 2 und Zigbee2MQTT / deCONZ
Dank zahlreicher Integrationsm√∂glichkeiten ist Home-Assistant eine einfache Plattform f√ľr das Steuern verschiedenster Smart-Home Ger√§te. Im Vergleich zu ioBroker ist mir der Start mit Home Assistant wesentlich einfacher gefallen. W√§hrend ich f√ľr ioBroker noch am Suchen war, welches Frontend ich f√ľr meine Dashboards verwenden k√∂nnte, hatte ich mit Home-Assistant out of the box ein fertig eingerichtetes System. Die Lovelance Dashboards von Home Assistant k√∂nnen einfach in der GUI zusammengeklickt...

Bitwarden in Docker betreiben - Setup Schritt f√ľr Schritt
Bitwarden ist ein webbasierter Passwort-Manager, √§hnlich LastPass, aber Open Source und der M√∂glichkeit diesen selbst zu betreiben (hosten). Wie sich Bitwarden im Vergleich zu anderen Passwort-Managern einordnet, habe ich auf folgender Seite √ľberlegt: Passwort-Manager sicher? KeePass vs. LastPass vs. Bitwarden. Bitwarden besteht aus mehreren Services, welche √ľber verschiedene Container bereitgestellt werden k√∂nnen. Das relativ aufw√§ndige Setup wurde mit "Bitwarden Unified" speziell f√ľr ein Selbs...

Fragen / Kommentare


Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu Mehr Details