anúncios

Mostrando postagens com marcador Laravel. Mostrar todas as postagens
Mostrando postagens com marcador Laravel. Mostrar todas as postagens

segunda-feira, 8 de março de 2021

Configurando o Jetstream Laravel no Docker

O que é Jetstram Laravel?

O Jetstream fornece o ponto de partida para seu próximo projeto incluindo login, registro, verificação de e-mail, autenticação de dois fatores, gerenciamento de sessão, suporte de API via Laravel Sanctum e gerenciamento de usuários

O objetivo deste post é explicar os procedimentos de configuração do Jetstream a partir do ambiente PHP 8 com Apache e SGBD MySQL no Docker

Após criar o ambiente PHP 8 com Apache e SGBD MySQL no Docker , segue os procedimentos abaixo:

Primeiro acessar o diretório do ambiente e subir o ambiente PHP 8 com Apache e SGBD MySQL, conforme segue:

$ docker-compose up -d

Se utilizou o mesmo ambiente PHP 8 com Apache e SGBD MySQL no Docker , tem o Adminer, que é uma ferramenta web de administração de diversos SGBDs, nesse caso o SGBD MySQL.

Acessar o Adminer no browser http://localhost:8080 e crie o banco de dados com o nome que preferir

Após criar o banco de dados, acessar o container php8-apache para instalar o Laravel

$ docker exec -it php8-apache bash

Instalar o Laravel via composer, definir o nome como app, mas geralmente é colocado o nome do projeto

$ composer create-project --prefer-dist laravel/laravel app

Após concluir a instalação do Laravel, saia do container php8-apache, digite exit

No diretório do ambiente PHP 8 que configurou, dentro deste diretório deve ter um diretório src, que é o volume mapeado entre HOST e CONTAINER.

$ cd ambiente-php8-apache-mysql-docker/src

Aqui deve ter o diretório definido na instalação do Laravel, nesse caso app, mas antes é necessário alterar o owner do diretório para o seu usuário.

$ sudo chown -R ambiente-php8-apache-mysql-docker/ seu-usuario:seu-usuario

Renomear o .env.example para .env no editor de sua preferência

DB_HOST=db #nome do serviço container MySQL
D_PORT=3306 # porta default do MySQL
DB_DATABASE=nome-banco-de-dados #mesmo nome do banco de dados criado na ferramenta Adminer
DB_USERNAME=root #nome de usuário do banco de dados definido no docker-compose do ambiente PHP 8
DB_PASSWORD=secret #password do usuário do banco de dados definido no docker-compsoe do ambiente PHP 8

Acessar o container php8-apache novamente

$ docker exec -it php8-apache bash

Dentro do container, acessar o diretório app e execute os procedimentos

$ cd app

Gerar a chave para o projeto via artisan do Laravel

php artisan key:generate

Adicionar a biblioteca Jetstream no projeto com Laravel

composer require laravel/jetstream

Adicionar a biblioteca Livewire para complementar o frontend no projeto Laravel com Jetstream

php artisan jetstream:install livewire

Adicione o times do Jetstream com Livewire, que é como organização de usuários.

php artisan jetstream:install livewire --teams

Execute as migrations para criar as tabelas no banco de dados criado anteriormente pela ferramenta Adminer

php artisan migrate

Instalação do Node.js e NPM via NVM (gerenciador de versões do Node.js)

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.35.3/install.sh | bash

source ~/.bashrc && nvm install v14.15.5

npm install && npm run dev

chown -R www-data:www-data storage

Saia do container php8-apache, digite exit

No browser, acesse http://app.intranet:8000 crie um novo usuário no link "register", após criar o usuário irá autenticar e redirecionar no dashboard automaticamente.

Referências


Laravel 8 Jetstream no Docker

Feito!

sexta-feira, 18 de outubro de 2019

Deploy de aplicação PHP no Heroku

O objeto deste howto é explicar os procedimentos para deploy de uma aplicação web desenvolvida em PHP com Framework Laravel no Heroku.

O que é Heroku?

Heroku é uma solução de Plataforma como Serviço ( Platform as a Service - PaaS), no qual o fornecedor entrega para o cliente um ambiente pronto para receber a aplicação. Diferente do IaaS Infraestrutura como Serviço ( Infrastructure as a Service - IaaS), no qual o cliente contrata máquinas (reais ou virtuais) e é responsável pela instalação de bibliotecas, montagem das estruturas do sistema de arquivos, entre outros recursos, o PaaS é uma solução de alto nível que abstrai este tipo de preocupação.

Como o ambiente é entregue pelo fornecedor, ao cliente basta se concentrar em desenvolver e instalar a aplicação. Normalmente nos serviços PaaS a instalação ou atualização é feita através de commits em repositórios remotos vinculados à aplicação, (e.g. GIT).

Requerimentos
  1. Criar a conta no Heroku, caso ainda não tenha;
  2. Instalar o Heroku CLI conforme o SO que estiver instalado;
  3. Instalar o sistema de versionamento GIT;
Após fizer os requerimentos obrigatórios, podemos seguir os procedimentos seguintes:

Acesse até o diretório onde encontra-se o seu projeto desenvolvido em PHP com Framework Laravel

Inicio do repositório local e adicionando os arquivos para commit
git init
git add .
git commit -m "first commit"


Crie um Procfile. Heroku lança um servidor Apache com PHP para servir o aplicativo a partir do DocumentRoot, que no nosso caso é a diretório /public.
echo "web: vendor/bin/heroku-php-apache2 public/" > Procfile

git add Procfile
git commit -m "Heroku Procfile"


Criar a aplicação no Heroku
heroku create nome-app

Buildpack PHP do Heroku
heroku buildpacks:set heroku/php

Acessar o bash do Heroku
heroku run bash

Gerar a KEY da aplicação
php artisan key:generate --show

Adicionar a KEY no .env
heroku config:set APP_KEY = [ colocar a chave gerada aqui ]

Adicionar credenciais do banco de dados no arquivo .env

heroku config:set DB_HOSTNAME = [ colocar o IP do servidor do banco de dados ]
heorku config:set DB_PORT = [ MySQL colocar 3306 ou PostgreSQL colocar 5432 ]
heroku config:set DB_DATABASE = [ colocar o nome do banco de dados ]
heroku config:set DB_USERNAME = [ colocar o usuário de conexão com banco de dados ]
heorku config:set DB_PASSWORD = [ colocar o password do usuário de conexão com banco de dados ]


Push do projeto no repositório remoto GIT no Heroku
git push heroku master --app nome-app

Executar os migrations e seeds no Heroku
php artisan migrate --app nome-app
php artisan db:seed --app nome-app


Abrir a aplicação no browser que definiu como padrão
heroku open --app nome-app

Feito!

domingo, 21 de maio de 2017

Configurando ambiente de desenvolvimento PHP com framework Laravel

O que é Laravel?

Laravel é um framework PHP criado por Taylor Otwell. Laravel foi lançado em 09 de Junho de 2011.

O Laravel permite que se mantenha o foco em um projeto, minimizando a quantidade de código necessário para uma dada tarefa.

Laravel foi desenvolvido sobre o paradigma da programação Orientada a Objetos sob o padrão de arquitetura de software MVC.

Depois de conhecer o Laravel e para que serve, podemos seguir os procedimentos de configuração no ambiente de desenvolvimento PHP com Laravel na distribuição Linux Debian e/ou CentOS/RHEL/Fedora.

Instalação dos pré-requisitos

Antes é necessário instalar o servidor Apache ou Nginx, PHP e SGBD MySQL ou PostgreSQL. No presente howto será instalado o Apache, PHP e SGBD MySQL/MariaDB.

Requerimentos do Laravel
  • PHP >= 5.6.4
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
Caso não tenha o Apache, SGBD MySQL e PHP instalado, segue o howto Configurando ambiente PHP 7 no Debian e CentOS , se caso já tiver, vá para a próxima etapa.

Instalando os requerimentos
Mbstring PHP Extension
Debian:
PHP 5.6 # apt-get install php5-mbstring
PHP 7 # apt-get install php7.0-mbstring

CentOS:
PHP 5.6 # yum install php56w-mbstring
PHP 7 #yum install php7-mbstring

Tokenizer PHP Extension
Debian: #apt-get install php-tokenizer
XML PHP Extension
Debian: #apt-get install php-xml

Instalando o Composer
Debian:
# apt-get install curl

CentOS:
# yum install curl

Download do Composer
$ curl -sS https://getcomposer.org/installer | php
Setar permissão de execução
$ chmod +x composer.phar Mover para o diretório local
# mv composer.phar /usr/local/bin/composer
Atualizar o Composer
# composer self-update

Modos de instalação do Laravel
Escolha um dos modos de sua preferência

1. Global
$ composer global require "laravel/installer"
Depois de instalado, execute o comando laravel new projeto

2. Create-projet
No diretório raiz do servidor web (Apache ou Nginx)
$ composer create-project --prefer-dist laravel/laravel projeto

Servidor PHP embutido
$ php artisan serve
Irá exibir server at http://localhost:8000
Abre no browser e irá aparecer a página de boas vindas default do Laravel.
Isso se o projeto não tiver no diretório raiz do servidor web (Apache, Nginx)
Caso queira executar o projeto no servidor web, colocar o projeto no diretório raiz do servidor web e startar o serviço do Apache ou Ngninx, por fim acessar no browser http://localhost/projeto

Referências
https://laravel.com/docs/5.4
Feito!