Déployer laravel à l'aide de docker sur EC2 sur AWS ④ (git clone-deploy, migration)

Aperçu##

-J'écrirai le processus de déploiement de laravel / docker sur AWS pour ceux qui sont bloqués au même point que le point où ils sont bloqués.

Cloner Git dans une instance EC2

Clonez n'importe quel projet laravel dans le référentiel distant de Git dans une instance EC2.

root@ip:/home/ubuntu# git clone [Toute URL de référentiel]

Lancement du conteneur Docker

Accédez à votre dossier cloné (où se trouve docker-compose.yml) et lancez le conteneur.

root@ip:/home/ubuntu/awstest# docker-compose up -d
root@ip:/home/ubuntu/awstest# docker-compose ps
    Name                   Command               State           Ports        
------------------------------------------------------------------------------
awstest_app_1   docker-php-entrypoint php-fpm    Up      9000/tcp             
awstest_db_1    docker-entrypoint.sh mysqld      Up      3306/tcp, 33060/tcp  
awstest_web_1   /docker-entrypoint.sh ngin ...   Up      0.0.0.0:10080->80/tcp

Ce n'est pas grave si vous vous levez comme ça.

** Où j'ai lutté ** J'ai eu une erreur de version de docker-compose.yml et selon le contenu de l'erreur

root@ip-172-31-35-36:/home/ubuntu/awstest# vi docker-compose.yml
version: "3.3" ←3.8 à 3.Changer en 3
  

Et changé la version. De plus, comme le push to git était faux, il n'y avait pas de fichier lié au docker et il n'a pas démarré. Je ne pense pas que quelqu'un d'autre que moi fasse une telle erreur, mais s'il y a la même personne, veuillez vérifier le dossier.

Préférences Laravel

Nous allons définir l'environnement pour que Laravel puisse être utilisé. Entrez le conteneur d'application.

root@ip:/home/ubuntu/awstest# docker-compose exec app bash

Le fichier .env qui configure les préférences dans le projet Laravel est spécifié dans .gitignore et ne sera pas poussé vers le référentiel Git. Je vais donc le créer à nouveau.

root@:/work# cp .env.example .env

Après avoir créé le .env, lancez le programme d'installation du compositeur et également APP_KEY.

root@:/work# composer install

root@:/work# php artisan key:generate

Modifier les autorisations dans le projet

Modifiez les autorisations sur les fichiers de votre projet.

Normalement, cela semble correct si vous modifiez les autorisations de stockage / journaux et de fournisseur.

Encore une fois, une erreur s'est produite et j'ai eu un peu de mal.

La vue ne s'ouvre pas avec l'erreur file_put_contents

root@:/work# chmod 777 storage/logs vendor
root@:/work# chmod 777 storage/framework/views
root@:/work# chmod 777 storage/framework/sessions

La page TOP s'est enfin ouverte.

Accédez à http: // [Set Elastic IP Address]: 10080 depuis votre navigateur.

スクリーンショット 2020-10-11 13.54.08.png

S'il est affiché comme ça, c'est OK.

Effectuer la migration

root@:/work# php artisan migrate
root@:/work# php aritsan db:seed

Si vous faites jusqu'à présent, je pense que l'application créée localement fonctionnera.

C'est la fin de "Déployer laravel à l'aide de docker sur EC2 sur AWS". Merci beaucoup.

** Article précédent ** Déployer laravel à l'aide de docker sur EC2 sur AWS ③

** Veuillez signaler toute erreur **

Recommended Posts

Déployer laravel à l'aide de docker sur EC2 sur AWS ④ (git clone-deploy, migration)
Déployer laravel à l'aide de docker sur EC2 sur AWS ① (Créer une instance EC2)
Déployez laravel à l'aide de docker sur EC2 sur AWS ② (Elastic IP acquisition-binding)
Déployer laravel à l'aide de docker sur EC2 sur AWS ③ (connexion SSH ~ installation Docke-compose)
Déployer avec EC2 / Docker / Laravel
Installer docker sur AWS EC2
Déployer RAILS sur EC2
Création d'un hôte Docker sur AWS à l'aide de Docker Machine (mémorandum personnel)
Comment déployer Laravel sur CentOS 7
Essayez Redmine sur le docker Mac
Exécutez l'AWS CLI sur Docker
Déployer l'image Docker de Flask sur Heroku
Déployer des rails sur Docker vers heroku
Déployer l'application SpringBoot sur AWS EC2
Utilisation de Docker avec Windows10 Home WSL2
Monter EFS sur Ubuntu EC2 sur AWS (amazon-efs-utils)
Lancer un conteneur docker sur EC2 (mémorandum personnel)
Utilisation de Java avec AWS Lambda-Implementation-Stop / Launch EC2
Envoyer des e-mails à l'aide de JavaMail sur AWS
Déployez l'application avec VPC + EC2 + Docker.
Créer un environnement avec Docker sur AWS