이글은 라라벨(laravel) 프로젝트를 Git으로 배포하는 방법을 담고 있다.

AWS Lightsail Ubuntu-512MB-Seoul

NGINX : nginx version: nginx/1.10.3 (Ubuntu)

PHP : php7.3PHP 7.3.4-1+ubuntu16.04.1+deb.sury.org+3 (cli) (built: Apr 10 2019 10:50:34) ( NTS )

MySQL : mysql ysql  Ver 14.14 Distrib 5.7.26, for Linux (x86_64) using  EditLine wrapper


root계정으로  ssh 접속한다.

모른다면 gogo

https://anko3899.tistory.com/185?category=785507

 


 

패키지 인덱스 업데이트

apt-get update

nginx 설치

apt-get install nginx

php7.3을 설치하기 위해 우분투를 업그레이해야함 

apt-get update && sudo apt-get upgrade

UTF-8 선택

Keep the local version currently installed 선택


*우분투 버전확인(참고사항)

cat /etc/issue

저장소를 추가 할 수 있도록 다음 패키지가 설치되어 있는지 확인

apt-get install software-properties-common

Ondrej의 저장소가 필요합니다.

add-apt-repository ppa:ondrej/php

패키지 목록 업데이트

apt-get update

그런 다음 PHP 7.3 및 기타 여러 패키지를 설치할 수 있음.

apt-get install php7.3 php7.3-xml php7.3-gd php7.3-opcache php 7.3-mbstring

*php버전확인(참고사항)

php -v

아파치 제거하기

위의 명령을 사용하여 PHP를 설치하면 기본적으로 Apache2가 설치됩니다. 

Apache2를 사용하지 않으려면이 명령을 사용하여 제거 할 수 있습니다.

apt-get purge apache2 apache2-utils apache2-bin apache2.2-common

 

MySQL설치

apt-get install mysql-server

*MySQL 버전확인(참고사항)

mysql --version

php패키지 설치

apt-get install php-mysql

이제 git ssh key를 설정하자

키를 생성하자

ssh-keygen

 

열어보면 세가지 파일이 있다.

ls ~/.ssh

 

생성된 ssh key는 아래로 찾아가서 키를 복사한다.

cat ~/.ssh/id_rsa.pub

 

키가 보이면 복사 한 후에 Github page > Settings > SSh keys 를 추가하자


laravel 이라는 디렉터리를 만들어주자

mkdir /var/www/laravel

git프로젝트를 다운받을 주소로 이동한다.

cd /var/www/laravel

내 프로젝트를 git clone를 해보자

git clone git@github.com:ddammo55/blog.git

아까 만들어준 키 비밀번호를 입력해준다.


다운받아졌는지 디렉터리를 확인해 보자

ls -al


/var/www/laravel/blog 에서 컴포저를 설치하자

curl -sS https://getcomposer.org/installer | php

 

전역 명령어로 사용

mv composer.phar /usr/local/bin/composer

 

컴포저 버전확인

composer --version

Do not run Composer as root/super user! See https://getcomposer.org/root for details

Composer version 1.8.5 2019-04-09 17:46:47

 

Do not run Composer as root/super 에러메시지 해결

 export COMPOSER_ALLOW_SUPERUSER=1

계속 사용

echo "export COMPOSER_ALLOW_SUPERUSER=1" >> ~/.bashrc

우분투 16.04 서버에 PHP7.2가 있었는데 문제가 해결 unzip설치

apt-get install zip unzip php-zip

composer 의존성 설치

composer install

라라벨 .env복사

cp .env.example .env

 

암호화 키를 만든다

php artisan key:generate

 

www 데이터 사용자에게 권한을 부여해야합니다. www-data는 Nginx가 응용 프로그램을 실행하기위한 기본 사용자

sudo chown www-data:www-data /var/www/laravel/blog/storage -R
chown www-data:www-data /var/www/laravel/blog/public -R

 

.env 환경설정

vi .env

mysql계정부분을 입력해주자 

DB_DATABASE = 

DB_USERNAME =

DB_PASSWORD =

:wq


mysql에 가서 데이터베이스를 만들어주자 .env DB_DATABASE 와 동일하게 만들어준다.

일단 mysql에 접속

mysql -uroot -p

패스워드 입력

 

접속 후 데이터베이스 만들기

CREATE DATABASE db1 default CHARACTER SET UTF8;

Query OK, 1 row affected (0.00 sec)

 

데이터베이스 목록 보기

show databases;

 

MySQL 빠져나오기

quit;

라라벨 마이그레이션 실행

php artisan migrate

Migration table created successfully.


새로 생성 된 Laravel 폴더를 사용하고 공용 폴더를 루트 폴더로 사용하려면 Nginx를 설치해야합니다.

 vi /etc/nginx/sites-available/default

 

참고 /etc/nginx/sites-available/default

server {
    listen 80;
    listen [::]:80;

    . . .

    root /var/www/laravel/blog/public;
    index index.php index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.3-fpm.sock;
    }

    . . .
}

nginx 다시 시작

service nginx restart

브라우저로 내 홈페이지 주소로 접속해보자  짜잔~~


git연결을 위해 아래와 같이 설정하자(이름설정 : 아무거나 상관없음)

git config --global user.name "HelloFinger" 

 

깃에 가입한 이메일(자신의 계정)

git config --global user.email "ddammo55@naver.com"

 

현재 디렉터리를 Git로컬저장소라고 알려주는 명령어 

git init

Reinitialized existing Git repository in /var/www/laravel/blog/.git/

 

git 프로젝트에 변경사항을 다운받고 싶으면 

git pull

 2 files changed, 29 deletions(-) (2개의 파일을 지웠다고 나온다.)

 

 

이상으로 마치겠다. 오류가 나면 구글검색으로 해보길........

 

+ Recent posts