AWS EC2 서버 무중단 배포/백그라운드 실행 1. AWS ssh 키로 접속하기 예시 : ssh -i "나의 인스턴스 이름" ubuntu@퍼블릭 IPv4 DNS 나의 인스턴스에서 연결 버튼을 누르고 ssh 클라이언트에서 해당 명령어 확인 가능 2. 디렉토리 이동 배포하고자 하는 디렉토리로 이동하기 3. nohup java -jar build/libs/demo-0.0.1-SNAPSHOT.jar & 다음과 같은 명령어로 빌드 후 아래와 같은 문구가 뜨면 성공 exit 명령어를 통해 터미널에 나와야지 백그라운드 프로세스가 계속 실행됨! ㄴ 왜 aws에 배포를 했는데 무중단 배포가 안될까하다가 알게된 사실들 ... ^^
썸네일 헤로쿠 배포 과정과 마주친 문제들 (H10, H14 ...) aws 배포를 하기 전 헤로쿠로 배포를 하게되었는데, 이때 마주친 문제들을 기록하고자 한다.. 먼저 헤로쿠 배포 과정을 간단히 설명하겠다. 헤로쿠 회원 가입 및 앱 생성 과정을 먼저 거친 후 다음과 같이 수행해주면 된다. # 1. 헤로쿠 로그인 $ heroku login # 2. 코드가 있는 폴더로 이동 (자신의 폴더명으로!) $ cd Desktop/heroku # 3. 깃 초기화 $ git init # 4. 연동 $ heroku git:remote -a {앱이름} # 5. 배포하기 $ git add . $ git commit -am "commit comment" $ git push heroku main $ heroku open 하지만 이렇게 배포하게 되면 무조건! 에러를 마주치게 된다. 1. H10-A..
썸네일 [Spring] 카카오 지도 API를 통해 정보 가져오기 https://developers.kakao.com/docs/latest/ko/local/dev-guide#search-by-keyword Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 스프링부트에서 카카오 지도 API를 통해서 주소 또는 키워드를 입력하면 관련된 주소 정보를 가져오도록 해보자! 자세한 내용은 위의 링크에서 확인하면 된다. 1 ) 주소 검색하기 주소를 지도 위에 정확하게 표시하기 위해 해당 주소의 좌표 정보를 제공하는 API이다. 주소에 해당하는 지번 주소, 도로명 주소, 좌표, 우편번호, 빌딩명 등의 다양한 정보를 함께 제공한..
썸네일 AWS EC2 Ubuntu 서버에 Domain 적용 (가비아) 1 ) 가비아 회원가입 회원 가입을 마쳤다면 www.내가 원하는 도메인을 입력한 이후에 원하는 도메인을 설정한 후 신청버튼을 누르면 된다. 나 같은 경우 .shop이 가장 저렴하여 이것으로 선택하였다. 2 ) DNS 관리 DNS 관리 창으로 들어가서 설정 버튼을 눌러주면 이렇게 레코드 수정이 가능하다. 호스트는 www , @ 를 입력하고 값/위치에는 나의 AWS 인스턴스의 퍼블릭ip주소를 입력하고 저장 그 후 AWS 콘솔에서 [Route 53] - [호스팅영역] - [호스팅 영역 생성] 경로로 들어가서 호스팅 영역을 생성해준다. (도메인 이름에 내가 가비아에서 구매한 도메인주소를 적어주면 된다.) 가비아 네임서버를 아까 복사해둔 aws 네임서버로 바꿔준다. 성공! 새 브라우저에 www.[도메인].site..
썸네일 [Server] phpMyAdmin 설치법 1 ) 업데이트 sudo apt update 2 ) 설치 + 설정 sudo apt install phpmyadmin 설치를 하면 중간에 ‘please choose the web server ~’ 분홍색 박스가 뜨게 되는데 탭을 눌러서 아무것도 선택하지 않고 넘어가 주면 된다. (이부분 캡처를 못했다 ㅎ.ㅎ) 그 다음으로는 DB 설정을 하라는 창이 뜨면 Yes를 누르면 된다 그 후 비번 설정 → 재확인을 거치게 되면 설치는 완료된다! 3 ) Document root directory와 phpMyAdmin 심볼릭 링크 연결 Nginx가 phpMyAdmin 파일을 찾을 수 있도록 다음 명령어를 통해 심볼릭 링크 연결을 해주고 재실행 해준다. $ sudo ln -s /usr/share/phpmyadmin /va..
썸네일 [Server] MySQL 외부에서 접속하기(Workbench) 1 ) MySQL 접속 $ sudo mysql -u root -p 2 ) 유저 생성 mysql> create '유저이름'@'%' identified by '비밀번호'; ‘유저이름’은 외부에서 접근이 가능해지며, select user, host from user;명령어를 통해 유저가 생성되었음을 확인할 수 있다. 3 ) 권한 부여 생성한 유저에 모든 권한을 부여해준다. mysql> grant all privileges on *.* to '[생성한 유저]'@'%'; 4 ) 외부 접속 설정 $ cd /etc/mysql/mysql.conf.d $ sudo vi mysqld.cnf mysqld.conf를 확인하면 bind-adress가 127.0.0.1로 설정되어있다. 하지만 우리는 외부접속을 허용시켜야 하므로 ..
썸네일 [Server] AWS 서버 구축하기 Linux + Nginx PHP MySQL AWS 서버 구축, Linux + Nginx PHP MySQL 설치 1 ) AWS 가입 및 지역 설정 먼저 AWS 프리티어 계정을 만들어 준다! 기본 지원 - 무료를 선택하고 가입을 완료하면 된다. AWS에 가입을 하고 나면 위와 같은 콘솔 홈이 등장하는데, 이때 우측 상단에서 지역 설정을 할 수 있다. 지역을 아시아 태평양(서울)로 변경해주면 된다! 2 ) 인스턴스 생성 콘솔에 ec2를 검색하고 인스턴스 생성을 이미지 파일을 선택해주면 된다. 나 같은 경우 Ubuntu 18.04 LTS ARM을 선택해주었다. 인스턴스 유형은 t2.micro를 선택해준다. 용량의 경우 프리티어 계정이 사용할 수 있는 용량이 최대 30GB라고 하니 30으로 설정하고 넘어가겠다. 보안 그룹 규칙 1 : ssh 0.0.0.0..
썸네일 [Server] 포트포워딩을 통해 외부에서 phpinfo 접속하기 1 ) 포트포워딩 설정 SK 브로드밴드 공유기 기준으로 설명하겠다! http://192.168.35.1/ 로 접근하하면 아래와 같은 로그인 창이 뜬다. (공유기마다 접속 url은 다른듯 하다.) 사용자 ID는 admin 패스워드는 공유기에 있는 [유선MAC 뒤 6자리]_admin 아이디와 PWD를 잘 입력한 후에 [고급설정] - [NAT/라우터관리] - [포트포워드]로 들어가면 된다. 외부포트 : 80 - 80 포워딩 IP 주소 : 나의 wifi ipv4주소 내부 포트 : 8080 - 8080 포워딩 IPv4 주소를 찾기 위한 사이트는 아래와 같다. 나의 경우 3번(시스템 리포트 사용)으로 해결했다. https://karzin.tistory.com/145 [macOS] 맥 ip주소 확인하기 [macOS]..
썸네일 [Server] Bitnami 설치 후 APM 실행하기 0 ) Bitnami 란? Bitnami란 가상 어플라이언스 및 웹 애플리케이션, 개발 스택용 소프트웨어 패키지 및 설치 라이브러리이다. 나의 경우 MAMP를 설치하였는데, 이는 맥 환경에서 아파치, MySQL, PHP와 같은 웹 개발환경을 통합적으로 구축해주는 프로그램이다. 1 ) Bitnami 설치 Bitnami 설치는 해당 사이트에서 설치할 수 있다. https://bitnami.com/stack/mamp/installer Install MAMP, Download MAMP show MD5 14e7886f4d2bca3ef33ae67753993521 SHA1 37595ed7451a99641bcff0c6b0c857c6fd8955dd SHA256 576e64cd34782581dfe69f7050340387d..
썸네일 [Server] Ubuntu에서 PHP 소스 설치하기/컴파일 설치/수동설치 PHP 소스설치 1 ) 패키지 설치 $ sudo su $ cd /usr/local $ apt-get install libxml2-dev $ apt-get install libjpeg-dev $ apt-get install libpng-dev $ apt-get install libsqlite3-dev 2 ) php 설치 php 7.4.1 버전을 설치하였다. $ wget https://www.php.net/distributions/php-7.4.1.tar.gz $ tar xvfz php-7.4.1.tar.gz 3 ) php configure $ ./configure \ --with-apxs2=/usr/local/apache2.4/bin/apxs \ --enable-mysqlnd \ --with-mysql-s..
썸네일 [Server] Ubuntu에서 MySQL 소스 설치하기/컴파일 설치/수동설치 이번에는 MySQL 소스설치를 해보자! 가상머신, 우분투 설치 및 소스설치에 대한 개념은 이전 포스팅을 참고하면 된다. [Server] Ubuntu에서 Apache 소스 설치하기/컴파일설치/수동설치 Ubuntu에서 Apache 소스를 설치해보도록 하자. 본격적인 설치에 앞서 APM, Apache, 소스설치, 가상머신 등 기본적인 내용에 대해서 설명하고자 한다. 💡 APM(Apache, PHP, Mysql) ? APM이 뭘까? 처음에 들었을 minutemaid.tistory.com MYSQL 소스설치 1 ) MySQL 컴파일 설치를 위한 패키지 설치 $ sudo su $ cd /usr/local $ apt-get update $ apt-get install cmake $ apt-get install lib..
썸네일 [Server] Ubuntu에서 Apache 소스 설치하기/컴파일설치/수동설치 Ubuntu에서 Apache 소스를 설치해보도록 하자. 💡 APM(Apache, PHP, Mysql) ? APM은 Apache, MySQL, PHP 세 가지가 연동되어 운영되도록 만든 환경이며, Apache, MySQL, PHP는 각각 독립된 프로젝트지만 서로간 호환성이 좋아 주로 세 프로그램을 묶어 서버 개발에 사용한다고 한다. 💡 Apache Apache는 Apache 재단에서 개발하고 오픈소스로 배포한 웹서버엔진으로, 정확한 표현은 "Apache HTTP 서버"이다. 우선 웹 서버는 웹 브라우저와 같은 클라이언트들로 부터 HTTP요청을 받아들이고, HTML 문서와 같은 웹페이지를 반환하는 일종의 컴퓨터 프로그램이다. 웹 서버에 주된 기능으로는 웹 페이지를 클라이언트로 부터 전달해주는 역할을 하는 것..