PHPKonf 2019 Konferansında sunacak olduğum "Serverless PHP" konuşmasının demo sunumudur.
- Öncelikle sisteminizde node.js'in ve git komut satırı araçlarının kurulu olduğundan emin olun,
$ npm install serverless -g
- Amazon Web Services'dan Access Keylerinizi temin edin,
$ serverless config credentials --provider aws --key KEY --secret SECRET
veya halihazırda aws-cli
kullanıcısıysanız
$ aws configure
AWS Access Key ID [None]: KEY
AWS Secret Access Key [None]: SECRET
Default region name [None]: eu-west-1
Default output format [None]:
komutları ile AWS hesabınızı serverless.js'e tanıtın.
- Bu demoyu git aracılığı ile klonlayın.
$ git clone https://github.com/eserozvataf/serverless-php
$ cd serverless-php
- Demo klasörüne composer bağımlılıklarını indirin.
$ composer install -o --no-dev
-
serverless.yml
dosyası içerisine bir göz gezdirin. -
Serverless.js aracılığı ile deployment'i başlatın.
$ sls deploy
Bazı durumlarda PHP'i tekrar compile etmeniz/derlemeniz gerekebilir, bunun için mutlaka
Docker kurulu bir cihaz üzerinde işlem yapmanız gerekecektir. Bu
işlemden önce kod tabanında bulunan buildphp.sh
ve dockerfile.buildphp
dosyalarını
da incelemeniz gerekebilir.
$ sh buildphp.sh
Bir kere deploy işlemi yaptıktan sonra ilgili fonksiyona gelecek requestleri aşağıdaki komut ile izleyebilirsiniz.
$ sls logs -f hello -t
hello burada izleyeceğimiz fonksiyonun ismi.
$ sls invoke local -f hello
$ sls invoke -f hello
Deploy ettiğiniz bir projeyi komple geri çekmek için aşağıdaki komutu kullanabilirsiniz:
$ sls remove
Robert Anderson ve Andy Raines'e bu referans aldığım projeleri için teşekkürlerimi iletiyorum.