본문 바로가기

개발관련

(17)
AWS EB로 장고 프로젝트 배포하기 해당 글은 Mac 기준으로 되어 있다.  사용 AWS 서비스Elastic Beanstalk > 배포 도구Lightsail > DB > MariaDBS3 > 파일 스토리지EC2 > 서버 1. DB 생성더보기1) 가장 먼저 AWS 계정이 없으면 가입하자.2) Lightsail 생성하기RDS는 생각보다 비싸기 때문에 저렴한 Lightsail을 이용해서 DB 서버를 만든다1. Lightsail로 이동 2. create instance3. Operating System (OS) only4. 우분투 24.04 LTS ssh 접속을 위해 본인 키를 넣거나 계정/비밀번호를 기억하는건 기본 3) DB 설치이 글에서는 Maria DB를 설치한다. 다른걸 설치해도 무방 3-1) SSH로 Lightsail에 접속 3-2) M..
Ubuntu 서버에 nginx 설치하기 0. 설명 서버는 AWS 라이트쉘 우분투 20.04 기준으로 한다. 유저 : ubuntu 홈 디렉토리 경로 : /home/ubuntu 1. nginx 설치 sudo apt-get update sudo apt-get upgrade sudo apt-get install nginx 구동 확인 sudo service nginx status 2. nginx 유저 설정 sudo vi /etc/nginx/nginx.conf user ubuntu;
우분투에 Mariadb 설치 및 셋팅 1. DB 설치 apt install mariadb-server 2. 클라이언트 설치 apt-get install mariadb-client 3. 기본 설정 mysql_secure_installation 참고 https://blogger.pe.kr/885
git pull 후 특정 작업하기 django 서비스를 운영할 경우 서버에서 소스를 받은 후 수동으로 해주어야 하는 일들이 있다. migrate나 특정 파일의 복사 같은. 그럴경우 깃 훅을 사용하면 쉽게 사용이 가능하다. 해당 예제는 서버에서 배포를 위해 깃허브의 소스를 Pull 할 경우 특정 파일을 복사하는 방법에 대해서 설명한다. 1. 프로젝트 폴더의 .git 폴더로 이동 프로젝트 폴더로 이동하면 .git 이라는 폴더가 존재한다. 훅을 사용하기 위해 해당 경로로 이동 ce projcet/.git/hook 2. pull을 받으면 자동으로 실행 될 post-merge 훅 파일을 생성 vi project/.git/hook/post-merge #!/bin/sh rm -rf /home/ubuntu/app/modules cp -r /home/u..
Nginx post가 get으로 바뀌는 경우 알아야 할 것 nginx get post put 실행 API 서버로 요청하는데 POST 요청이 GET으로 전달되는 문제가 생겼다. 뭔가 문젠가 한참 찾았는데 server { listen 80 default_server; server_name domain.co.kr; client_max_body_size 50M; return 301 https://$host$request_uri; index index.html; } 보통 ssl 인증을 위해서 http로 들어오는 요청을 자동으로 https 로 리다이렉트 시킨다. 여기서 문제는 return 301 .... 바로 이 부분이다. 이놈이 http로 요청을 받으면 POST 요청을 GET으로 변경 시켰던것.... 이럴경우 return 301 ... > return 30..
Ubuntu + Nginx + Cafe24 SSL 적용(Django, Vue) 알아야할 지식 키워드 ubuntu nginx vi cafe24 ssl django vue 실행 1. 먼저 카페24 ssl 인증서를 신청한다. 신청이 완료되면 위와 같은 세팅으로 개인키, 인증서, 중개자인증서, 체인인증서를 모두 다운 받는다. 2. 다운받은 인증서를 SSL 인증을 적용할 서버로 옮긴다. 방법을 모르면 ubuntu scp를 검색 3. 인증서 합치기 서버의 적당한 위치에 인증서를 복사 후 인증서를 합친다. cat ssl.crt chain_all_ssl.crt > domain.pem domain.pem은 본인의 도메인 주소를 입력한다. 위 명령어를 입력하면 두개의 인증서를 붙여주는데 들어가보면 중간에 -----end certificate----- -----begin certificate ----..
Ubuntu nginx에 Vue 배포 알아야 할 사항 - Vue - Ubuntu - nginx - 서버 배포란 무엇인가 실행 뷰 프로젝트를 완성해서 서버에 배포하려 한다. 1. 우분투 서버 셋팅 먼저 아무 가상 클라우딩 서비스를 이용해서 우분투 서버를 생성한다. 버전은 20.xx 2. nginx 설치 sudo apt-get update sudo apt-get upgrade sudo apt-get install nginx 구동 테스트 : sudo service nginx status 3. node 설치 우분투에서 노드를 그냥 apt i 로 설치할려고하면 이상한 버전이 깔리면서 알수없는 오류가 발생한다. 꼭 순서대로 실행 시킨다 curl -sL https://deb.nodesource.com/setup_14.x | sudo bash -E - s..
우분투 16.04 + docker DB백업 & 파일 백업 스케줄링 설정 우분투 16.04에 도커가 올라가 있고, 도커가 외부 링크로 파일을 저장하고 있는 서비스의 백업 스케줄링 설정에 대해서 알아보겠다.서버에는 크론탭이 깔려 있어야 한다. 서버 : 우분투 16.04디비 : 마리아 디비서비스. : 도커파일 폴더 : /data/ 1. 루트에 백업 폴더를 생성한다. $ mkdir backup 2. 백업 폴더로 이동 후 스케줄링에서 사용될 sh 파일을 생성한다. $ vi backup.sh 파일의 내용은 아래와 같다. #!/bin/shTODAY=`/bin/date +%Y%m%d`docker exec [docker db name] /usr/bin/mysqldump -u root --password=[PW] [db name] > /root/backup/$TODAY-db.sqlzip /r..