본문 바로가기

AWS32

AWS lambda 배포 과정 0.서버리스 프레임워크 로컬에 설치 1. aws iam 권한설정 2. serverless org 액세스 키등록 , 3. serverless apps create 복사 conda 가상환경 python3.9 생성 cd documents cd github 붙여넣기 VSC로 실행 , sls deploy로 테스트배포 4. 포스트맨으로 테스트해본다. 5. AWS 배포용 레파지토리를 만든다! 6. 서버리스 템플릿 폴더에 있는 것들을, 새로운 레파지토리로 모두 이동(복사)!! (숨김항목도 옮겨야함) 7. 새로운 레파지토리를 vscode로 열고 8. .gitignore 파일에, node_modules 를 타이핑하고 저장 9. 커밋하고 푸쉬한다. 10. 파이썬 인터프리터 가상환경을 맞게 설정 11. 로컬에서 만든 레시피서.. 2023. 1. 11.
AWS lambda layer 추가(numpy+pandas) aws linux lambda layer 추가(numpy+pandas) 1. putty 로 ec2접속(람다가 아마존 리눅스기 때문에 같은 OS로 접속) 2. 파이썬이 없으면, 먼저 아나콘다 설치 3. 람다의 환경이 파이썬 3.9이므로, 가상환경 만든다. conda create -n lambda39 python=3.9 4. 가상환경으로 이동 5. 디렉토리를 하나 만든다. 이름은 python(소문자) 으로 ! 6. python 디렉토리로 이동 cd python 7. 아마존 리눅스에 설치할 넘파이와 판다스 파일을 찾는다. https://pypi.org 에서 !! 검색하고 좌측에 다운로드 linux 버전 링크주소를 복사한다. cp39 가 파이썬3.9 라는뜻 8. numpy, pandas , pytz 를 찾아서 .. 2023. 1. 11.
lambda 서버리스 수작업 lambda = 서버리스 api Gateway = 해당람다를 실행시키기 위한 cloud watch = 디버깅 로그 (print, error ) 1.수작업 2.cicd 자동배포 (추후안내) IAM 검색 사용자 aws 액세스 키 - 프로그래밍만 체크 기존정책연결 서버를 올리기 위한 인증준비는 완료되었다. npm 설치 https://nodejs.org/en/ lts - window serverless framework 설치 cmd - $ npm install -g serverless https://app.serverless.com/ 접속 - 로그인 org - providers - add - next - access/secret keys - default app - created - python flask ap.. 2023. 1. 10.
AWS EC2 생성방법, Putty로 접속, aws에서 웹대시보드 streamlit 백그라운드에서 돌리기 1. 로그인 2. ec2 생성 3. 기본적인 항목 입력, 옵션은 읽으면서 적용하는데 프리티어기 때문에 할것은 용량늘리기 정도이다. 4. 여기서 os는 aws linux를 사용할것 5. 키페어 생성 윈도우는 PPK를 선택한다. 키를 잃어버리면 접속할 수가없으므로 저장을 해놓자. 6.인스턴스가 생성되었으면 세부정보에서 공인ip 혹은 dns를 복사한다. 7. 로컬에 Putty를 설치하고 실행한다. 8. 세션에 복사한 ip를 붙여넣는다. 9. ssh -> auth -> 아까 생성한 키페어 .ppk 파일을 넣는다. 10. 세션으로 돌아가 open 하면 리눅스가 열린다. 11. 유저 이름을 입력하라고 하는데 아마존 리눅스의 기본 아이디는 ec2-user 이다. 12. 파이썬을 사용하기 위해 홈 디렉토리에 anaco.. 2022. 12. 14.
MySQL 영화 리뷰 서비스 개발 use movie_test_db; -- 1. 테이블 만들기 -- 2. 더미 데이터 insert 했다고 가정하고 진행한다. -- 3. 화면 기획서를 보고, 필요한 slq문을 작성. -- 중요! 순서 : 단일 테이블 처리 가능한 것부터 작성하고 -- 메인 화면처럼, 여러 테이블 조인하는 것은 맨 나중에 작성한다. -- 회원가입 insert into user ( email, password, nickname, gender) values ( 'aksl@naver', '1234', '김닉네임', 1); -- 영화명을 탭하면 리뷰 작성 화면 -- 100번 영화의 10번유저 리뷰 예시 insert into review ( movie_id, user_id, content, rating) values ( 100, 10 .. 2022. 12. 12.
MySQL 인스타그램 클론 스키마 디자인 인스타 그램 클론 DB를 만들어보자. 프로필, 좋아요, 해쉬태그 기능이있다. 작성한 글에 댓글이 달린 모습 프로필에 팔로우, 팔로잉 숫자 카운트 자, 이제 테이블을 만들어보자 유저의 정보를 기록할 users 테이블과 사진을 관리할 테이블을 아래와 같이 만든다. photos 테이블의 user_id 는 users 테이블의 id를 참조하기위해 Foreign Keys(연결) 설정을 한다. 더미 데이터가 있다고 가정하고 아래와 같이 SQL문을 작성 및 테스트 해볼 수 있다. -- 1. 가장 오래된 회원 5명은??? select created_at, id from users order by created_at limit 0,5; -- 2. 회원가입을 가장 많이 하는 요일은??? select dayname(creat.. 2022. 12. 12.
MySQL 일정공유 앱개발 테이블 설계(회원가입, 내 일정화면, 친구들의 일정목록) 회원가입 테이블 일정화면 테이블 내가 팔로잉한 친구들의 일정을 가져오는 테이블 테이블을 만들었으면 임의의 더미 데이터로 테스트 해본다. 여기서 데이터는 가지고 있다고 가정하고 아래와 같은 sql문을 작성할 수 있다. 여기서 Foreign Key 설정에 관해 다루지는 않았지만 했다고 가정한다. -- 1. 회원가입 sql을 작성. insert into user ( email, password, nickname) values ('abc@naver.com', 'abcd1234', '홍길동'); -- 2. 25개씩 가장 먼 미래의 일정부터 차례로 보여줍니다. -- 나는 user_id 1번인 사람이다 라고 가정. select * from schedule where user_id = 1 order by date de.. 2022. 12. 12.
MySQL sns 테이블 생성 : 좋아요, 팔로우, 태그 등은 유니크해야한다. table create 제일하단 indexes 클릭 index name 을 짓고 type을 UNIQUE로 한뒤 index columns 를 체크하고 apply 하면 체크된 칼럼에 값은 유니크 하게 된다. (중복데이터가 들어오면 에러를 발생시킨다.) 2022. 12. 8.
MySQL 테이블 합치기 left join on, Foreign keys, n번 고객이 주문한 데이터 가져오기, 다른테이블에 남은 고객정보 한번에 삭제하기 on delete cascade created_at 컬럼은 날짜의 최신화를 위해 Default 값에 now()를 하였음. 누가 주문했는지 알수있게 customer_id를 customers 테이블의 id 값과 아래처럼 연결시킬것이다. 위에 orders 테이블생성에서 좌측하단 Foreign keys 를 누르면 위와같이 뜬다. Foreign keys 란 서로다른 두 테이블의 키를 연결시키는 작업이다. Referenced Table 클릭후 연결할 테이블선택Referenced Column 클릭후 연결할 컬럼 선택 여기서는 Referenced Table은 customers 테이블을선택 Referenced Column은 customers 테이블의 id 를 orders 테이블 customer_id 컬럼에 체크하여 연결 하였다. 이로써 orders 테.. 2022. 12. 8.
MySQL !=, group by having, between A and B, not like, case, if ,not in, not null -- 테이블 생성을 위한 코드 INSERT INTO books (title, author_fname, author_lname, released_year, stock_quantity, pages) VALUES ('The Namesake', 'Jhumpa', 'Lahiri', 2003, 32, 291), ('Norse Mythology', 'Neil', 'Gaiman',2016, 43, 304), ('American Gods', 'Neil', 'Gaiman', 2001, 12, 465), ('Interpreter of Maladies', 'Jhumpa', 'Lahiri', 1996, 97, 198), ('A Hologram for the King: A Novel', 'Dave', 'Eggers', 2012,.. 2022. 12. 7.
MySQL 날짜처리 day(),dayname(),now(),date_format(),date_add( , interval ), on update now() -- 날짜 관련 처리하는 방법 -- insert into people2 (name, birthdate, birthtime, birthdt) values ('Mike', '1990-11-11', '10:07:35','1990-11-11 10:07:35'), ('Larry', '1972-12-25', '04:10:42', '1972-12-25 04:10:42'); -- 날짜(일) 정보만 가져오기 select name, day(birthdate) from people2; -- 요일 정보만 가져오기 select name, dayname(birthdate) from people2; -- 1=Sunday, 2=Monday, 3=Tuesday ''' select name, dayofweek(birthdate) fro.. 2022. 12. 7.
MySQL group by, count, sum, avg, max, min, sub query 사용법 -- 테스트용 테이블을 만드는 코드 INSERT INTO books (title, author_fname, author_lname, released_year, stock_quantity, pages) VALUES ('The Namesake', 'Jhumpa', 'Lahiri', 2003, 32, 291), ('Norse Mythology', 'Neil', 'Gaiman',2016, 43, 304), ('American Gods', 'Neil', 'Gaiman', 2001, 12, 465), ('Interpreter of Maladies', 'Jhumpa', 'Lahiri', 1996, 97, 198), ('A Hologram for the King: A Novel', 'Dave', 'Eggers', 20.. 2022. 12. 7.