[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Roberto Noya
Criador Roberto Noya 23/01/2022

Olá Carlos,

 

Conclui o curso "DEPLOY DE UMA APLICAÇÃO LARAVEL COM DOCKER NA DIGITAL OCEAN"

Consegui rodar uma aplicaçāo CRUA do Laravel da Digital Ocean conforme o curso.

Eu tenho uma aplicaçāo com front-end VueJS 2, back-end LARAVEL versao 7 e Setup Docker.

Essa aplicaçāo se trata de um dashboard com autentiçāo.

Localmente esta rodando perfeitamente. (localhost:8989)

 

Na digital Ocean eu fiz o seguinte:

- git clone https://github.com/robertotnoya/appcommercial (PRIVADO eu posso liberar para voce caso necessario)

- (sucesso) criei e editei o arquivo .env

- (sucesso) rodei o comando composer install no container

- (sucesso) gerei as chaves do meu projeto key:generate e jwt:secret

- (sucesso) rodei a migraçāo das tabelas do banco com seed 

- (erro) ao tentar acessar o projeto no navegador pelo IP do droplet nāo carrega nada. Testei inclusive pelo Postman o acesso de uma rota simples e ocorre o mesmo problema

Precisa instalar pacotes NPM?

Outro ponto que achei interessante e como a Digital Ocean entende que ao colocar o IP do droplet deve apontar para a pasta /home/carlos/projects/curso-do/public ?

 

Manager Carlos Ferreira 23/01/2022

Olá, Roberto!
Tudo bem?

O npm você roda local, precisa gerar o build (ou usar CI/CD para automatizar isso):
npm run build

Está usando o meu setup Docker?
Se sim, local funciona certinho?

No aguardo de mais detalhes (se tiver o IP do droplet, ou domínio que já aponta para ele, ajuda demais)

Carlos Ferreira
Criador Roberto Noya 23/01/2022

Oi Carlos,

Deixei público o repositório no GIT https://github.com/robertotnoya/appcommercial 

O droplet roda no seguinte IP 159.89.33.131.

O NPM eu rodo "npm run prod" para colocar em produçāo. Para mim nāo há a opçāo "npm run build"

Meu setup Docker existe uma diferença em relaçāo ao seu nas linhas 17 a 21 referente a extensao JPG do GD.

Agora pouco eu chequei os container na Digital Ocean (sudo docker-compose ps) e todos estāo "UP".

Também, chequei o banco (sudo docker-compose exec mysql bash) e as tabelas e seeders foram migrados.

Para concluir, localmente eu refiz os containers (docker-compose up -d --build) e o app roda normalmente na url http://localhost:8989 

Roberto Noya
Manager Carlos Ferreira 23/01/2022

O seu nginx está usando a porta 8989, e não a porta 80 e 443, por isso você não consegue acessar

No arquivo docker-compose.yml muda as portas para:
# nginx
    nginx:
        image: nginx:alpine
        restart: unless-stopped
        ports:
            - 80:80
        volumes:
            - ./:/var/www
            - ./docker/nginx/:/etc/nginx/conf.d/
        networks:
            - commercial

E por último, deleta os containers:
docker-compose down

E sobe novamente:
docker-compose up -d

---

Ou, simplesmente recria o de nginx:
docker-compose up -d nginx --build

Carlos Ferreira
Criador Roberto Noya 23/01/2022

Eu fiz a alterações:

- Alterei meu arquivo docker-compose.yml as portas do nginx conforme orientado. Chequei no servidor se realmente  o arquivo foi alterado com o comando: sudo nano docker-compose.yml e consta as novas portas 80:80

- No meu terminal SSH dei o comando:

sudo docker-compose down  

apos isso: sudo docker-compose  up -d --build

Ao tentar acessar no navegado dessa vez aparece a mensagem 

502 Bad Gateway


nginx/1.21.5

 

 

Roberto Noya
Criador Roberto Noya 23/01/2022

Complementando, fiz um teste do app localmente agora com a porta 80:80 e esta rodando normalmente.

Tambem conferi o Firewall na D.O e deixei da mesma forma como a aula

Type Protocol Port Range Sources  
SSH TCP 22
All IPv4
 
All IPv6
 
HTTP TCP 80
All IPv4
 
All IPv6
 
HTTPS TCP 443
All IPv4
 
All IPv6

 

 

 

Roberto Noya
Manager Carlos Ferreira 23/01/2022

Agora erro 502, está quase lá.

No seu projeto, existe o arquivo .env?

Instalou as depêndencias do projeto?
composer install

Carlos Ferreira
Criador Roberto Noya 23/01/2022

No projeto existe sim arquivo .env e eu subi um exemplo no git (menos informações sensiveis) na url abaixo:

https://github.com/robertotnoya/appcommercial/blob/main/.env.example

Eu rodei sim o arquivo compose install e consigo rodar comandos artisan usando o comando sudo docker-compose exec appcommercial bash

Inclusive o arquivo .env tem o APP_KEY e o JWT_SECRET graças aos comandos artisan.

Roberto Noya
Manager Carlos Ferreira 23/01/2022

Quando acessou o container:
sudo docker-compose exec appcommercial bash

E rodou os arquivos de migrations, gerou nenhum erro?
php artisan migrate

Todos os seus containers estão rodando com sucesso?
docker ps

Gera logs do seu container appcommercial
docker ps
docker logs container_id

----

Me envia um e-mail, que te ajudo a resolver (acesso o seu server, através da sua maquina)

Carlos Ferreira
Criador Roberto Noya 23/01/2022

Oi Carlos,

Todos os conatiners estao UP e a migracao do banco ocorreu com sucesso.

Vou enviar o email para voce. 

Ao verificar os logs do container NGINX aparece o abaixo:

2022/01/31 20:17:30 [error] 22#22: *13 connect() failed (111: Connection refused) while connecting to upstream, client: 211.3.86.31, server: , request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.1.1:9000", host: "159.65.250.210"

211.3.86.31 - - [31/Jan/2022:20:17:30 +0000] "GET / HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36"

147.182.240.154 - - [31/Jan/2022:20:22:36 +0000] "\x16\x03\x01\x01\xFD\x01\x00\x01\xF9\x03\x03\x13<\xBF\xA9\xDE#b\xE4\xA1\xA4\xBFM\x19\x8B\xCC\x81\x22*\xE0\xCE}\xDD\x22\x82\x00b \x7F\x9A^5\xC5\x00\x01<\xCC\x14\xCC\x13\xCC\x15\xC00\xC0,\xC0(\xC0$\xC0\x14\xC0" 400 157 "-" "-"

2022/01/31 20:23:13 [error] 22#22: *17 connect() failed (111: Connection refused) while connecting to upstream, client: 211.3.86.31, server: , request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.1.1:9000", host: "159.65.250.210"

211.3.86.31 - - [31/Jan/2022:20:23:13 +0000] "GET / HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36"

211.3.86.31 - - [31/Jan/2022:20:23:14 +0000] "GET /favicon.ico HTTP/1.1" 304 0 "http://159.65.250.210/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36"

Roberto Noya
Manager Carlos Ferreira 23/01/2022

Continuamos no e-mail

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!