Bulutfon olarak değişik teknolojileri deneme ve araç çeşitliliği sağlamaya özen gösteririz. Bu bağlamda Laravel‘de şirketimizin araç zincirinde yer alan teknolojilerden biridir ve bu yazımızda Laravel geliştirme ortamınızı hazırlarken izleyebileceğiniz değişik yolları inceleyeceğiz.
Bu yazımızda seçenekler üzerinden geçtikten sonra Ubuntu üzerinde yerel ortamın kurulumunu inceleyeceğiz.
Geliştirme ortamı seçenekleri
Laravel geliştirme ortamı kurulumunu Linux üzerine yerel kurulum veya Docker ile yapabilirsiniz.
Yerel kurulum
Yerel kurulum basit olarak php ve gerekli çevresel bileşenlerin yüklenmesinden ibarettir ve bu yazımızda bu yolu takip edeceğiz.
Laravel Homestead ile çalışma
Laravel Homestead, Vagrant kullanarak geliştirme ortamınızı hazırlamanızı sağlar. Homestead, bilgisayarınıza bir projede duyacağınız tüm çevresel bileşenleri kurmadan geliştirme yapmanızı sağlar. Vagrant temel olarak bir sanal makinayı kullanır böylece değişik işletim sistemlerinde temel olarak bir Ubuntu kullanarak geliştirme yapabilirsiniz. Aşağıda bu yazıyı yazdığım tarihlerde Vagrant Box’ı içerisinde bulunan yazılımları bulabilirsiniz.
Ubuntu 18.04 Git PHP 7.4 PHP 7.3 PHP 7.2 PHP 7.1 PHP 7.0 PHP 5.6 Nginx MySQL | lmm for MySQL or MariaDB database snapshots Sqlite3 PostgreSQL (9.6, 10, 11, 12) Composer Node (With Yarn, Bower, Grunt, and Gulp) | Redis Memcached Beanstalkd Mailhog avahi ngrok Xdebug XHProf / Tideways / XHGui wp-cli |
Apache Blackfire Cassandra Chronograf CouchDB Crystal & Lucky Framework Docker Elasticsearch | Gearman Go Grafana InfluxDB MariaDB MinIO MongoDB MySQL 8 Neo4j | Oh My Zsh Open Resty PM2 Python RabbitMQ Solr Webdriver & Laravel Dusk Utilitie |
Docker

Docker “konteynerleştirme” olarak da bilinen işletim sistemi seviyesinde sanallaştırma sağlayar. Docker ile Homestead‘de olduğu gibi bilgisayarınıza gerekli uygulamaları kurmadan geliştirme sağlayabilir ve izole bir geliştirme ortamı elde edebilirsiniz. Hazırlamış olduğunuz bu ortamı ilerleyen aşamalarda uygulamanızı deploy etmek içinde kullanabilirsiniz.
Ubuntu üzerinde Laravel geliştirme ortamının hazırlanması

İlk olarak ubuntu üzerinde paket listemizi güncelleyelerek başlayalım.
sudo apt update
Ondrej Sury‘nin hazırlamış olduğu depo listesini ekleyelim. Kendisi Debian paketleri konusunda güvenilir bir kaynaktır.
sudo apt -y install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
Artık PHP’i yüklemeye hazırız. Bu yazıyı yazdığım tarihlerde PHP’nin son stabil sürümü olan 7.4’ü kullanacağız. PHP 7.4’ü direkt olarak kurmaya çalıştığınızda sizin için Apache’i de kuracaktır ancak güncel PHP sürümlerinde varsayılan olarak gelen yerleşik PHP sunucusu bizim için yeterli olacaktır. Bununla birlikte Laravel geliştirmenizde gerekli olabilecek PHP paketlerinide aşağıda yer alan komuta ekliyorum.
sudo apt install php7.4-cli \
php7.4-bcmath \
php7.4-xml \
php7.4-sqlite3 \
php7.4-curl \
php7.4-json \
php7.4-mbstring \
php7.4-mysql \
php7.4-opcache \
php7.4-pgsql \
php7.4-readline \
php7.4-common \
php7.4-zip \
php7.4-redis \
php7.4-gd
php -v komutu ile php versiyonunu kontrol edebilirsiniz ve size aşağıdaki gibi bir çıktı verecektir.
» php -v
PHP 7.4.5 (cli) (built: Apr 19 2020 07:36:46) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.5, Copyright (c), by Zend Technologies
Composer kurulumu

Composer PHP için paket bağımlılık yöneticisidir ve Laravel geliştirmemiz için temel araçlardan biridir. Aşağıdaki komutları izleyerek composer’ı kurabiliriz.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
Bu adımlar composer.phar adlı dosyanın indirilmesini saplayacaktır. Bu dosyayı /usr/bin veya /usr/local/bin dizinlerine taşıyarak genel bir komut olarak kullanabilirsiniz.
sudo mv composer.phar /usr/local/bin/composer
Böylelikle bilgisayarımızda herhangi bir yerde composer komutu çalıştırdığımızda aşağıdakine benzer bir çıktı almamız gerek.
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.9.0 2019-08-02 20:55:32
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
-d, --working-dir=WORKING-DIR If specified, use the given directory as working directory.
--no-cache Prevent use of the cache
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Laravel kurulumu

Artık composer ile Laravel kullanmaya başlayabiliriz.
composer create-project laravel/laravel proje-ismi
Bu komutla Laravel ve Laravelin tüm bağımlılıkları yüklenecektir. Bu aşama biraz vakit alabilir ve sonrasında proje dizinimiz içerisine girerek Laravel‘i çalıştırabiliriz.
cd proje-ismi
php artisan serve
php artisan serve php yerleşik sunucusunu kullanarak Laravel uygulamanızı çalıştır ve genel olarak 8000 portunda çalışsada 8000 portunun kullanımına bağlı olarak yeni bir port belirler. Bu komutun çıktısında hangi portta çalıştığı bilgisi yer almaktadır.
» php artisan serve
Laravel development server started: http://127.0.0.1:8000
[Thu Apr 30 11:11:57 2020] PHP 7.4.5 Development Server (http://127.0.0.1:8000) started
Merhaba
Laravel ile calisan bir sistemim var, o konuda kendi localimda kurulup calistirdigimda hata veriyor
Benim bilgisayarima baglanip kurulumda ucreti karsiliginda yardimci olur musunuz
Kolay gelsin
Hüseyin bey merhaba,
Firmamızın böyle bir hizmeti maalesef bulunmuyor. Türkiye Laravel topluluğundan eminim ücretli, ücretsiz birileri yardımcı olacaktır.
İyi çalışmalar dileriz.