Albus log - 5
배포
react는 s3, cloudfront 로 배포하고, express는 beanstalk으로 배포하기로 결정
react 앱 배포
- freenom에서 albus-service.ml 로 dns 받음
- aws s3 로 react 앱 배포
- cloudfront로 s3 연결
- aws route53으로 albus-service.ml 에 cloudfront 주소 연결
-> https가 지원되는 배포 완료
EC2 Setting
aws beanstalk으로 해보려 했으나, typescript 와 postgresql를 사용해서 조금 설정이 오히려 복잡해지는 것 같아 EC2로 결정
설치
# nodejs 설치
$ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
$ sudo apt-get install nodejs -y
# npm update
$ npm install -g npm
# yarn 설치
$ npm install -g yarn
# postgresql 설치
$ sudo apt-get install postgresql
$ sudo apt-get install postgresql-client
# vim 설치
$ sudo apt-get install vim
postgresql 설정
접속 인증 설정
$ sudo vi /etc/postgresql/10/main/pg_hba.conf
#local all all peer
local all all trust
-----
$ sudo /etc/init.d/postgresql restart
비밀번호 설정을 위해 잠시 trust로 설정
user 및 DB 생성
$ sudo -u postgres createuser albus-db-client // user 생성
$ sudo -u postgres createdb albusDB // DB 생성
$ psql -U postgres
postgres=# ALTER USER postgres PASSWORD 'myPassword'; // postgres password 설정
postgres=# ALTER USER albus-db-client PASSWORD 'myPassword2';
postgres=# grant all privileges on database "albusDB" to "albus-db-client"; // user albusDB 권한 모두 부여
postgres=# alter role "albus-db-client" superuser; // user에게 superuser 권한 줌
접속 인증 재설정
안전한 인증 방식으로 재설정(md5 : password 입력 방식)
$ sudo vi /etc/postgresql/10/main/pg_hba.conf
#local all all peer
local all all md5
-----
$ sudo /etc/init.d/postgresql restart
uuid-ossp 설치
UUID 를 만들어 주는데 사용되는 기능이다.
$ psql -U "albus-db-client" "albusDB"
albusDB=# create extension if not exists "uuid-ossp";
albusDB=# select uuid_generate_v4(); // 설치 확인
uuid_generate_v4
--------------------------------------
d0820cc8-4850-455c-b9c2-035a13aca715
(1 row)