공부하고 기록하는, 경제학과 출신 개발자의 노트

프로그래밍/이것저것_개발일지 24

IBM Kubernetes Cluster에 SpringBoot Application 구동 실습하기 - 2. deploy

[IBM Clouders - Indigo Blue 포스트] IBM Cloud에서는 신용카드를 등록한 Pay-go 계정이 있으면 무료 Kubernetes Cluster를 생성할 수 있다. 한 개의 클러스터를 생성할 수 있고, 30일이 지나면 자동으로 삭제되기 때문에 과금 염려도 없다. Kubernetes 환경을 가볍게 실습할 수 있는 조건이다. SpringBoot로 생성한 자바 웹 어플리케이션을 Kubernetes Cluster에 구동하는 실습을 해 보았다. DockerFile을 생성한 경로에 Kubernetes에 Deploy하기 위한 yaml파일 Deployment.yaml을 생성한다. apiVersion: apps/v1 kind: Deployment metadata: name: app-h2db labe..

IBM Kubernetes Cluster에 SpringBoot Application 구동 실습하기 - 1. dockerizing and 환경설정

[IBM Clouders - Indigo Blue 포스트] IBM Cloud에서는 신용카드를 등록한 Pay-go 계정이 있으면 무료 Kubernetes Cluster를 생성할 수 있다. 한 개의 클러스터를 생성할 수 있고, 30일이 지나면 자동으로 삭제되기 때문에 과금 염려도 없다. Kubernetes 환경을 가볍게 실습할 수 있는 조건이다. SpringBoot로 생성한 자바 웹 어플리케이션을 Kubernetes Cluster에 구동하는 실습을 해 보았다. 생성한 스프링부트 프로젝트는 www.edwith.org/boostcourse-web/joinLectures/12943 [부스트코스] 웹 프로그래밍 강좌소개 : edwith - 부스트코스 www.edwith.org 에서 확인할 수 있는 실습 예제를 직접..

Ubuntu 인스턴스에 MySQL 올리기

Ubuntu 16.04에 Mysql 5.7 / 8.0.22를 설치하면서 구글링했던 내용들 정리 Mysql 설치하기 mysql-client : 데이터베이스에 연결하고, CLI로 mysql 명령어를 실행하기 위한 프로그램 mysql-server : 데이터베이스를 host, 관리하기 위한 프로그램. 일반적으로 둘 다 필요한 경우가 많음. sudo apt-get update sudo apt-get install mysql-server mysql-client cf. mysql 버전 8을 설치하고 싶은데, sudo apt-get으로 실행하면 5.7이 설치되는 경우 # 실행중인 mysql 프로세스를 종료한 뒤 sudo apt-get remove --purge mysql* sudo apt-get autoremove s..

Tomcat 서버 구동시 Creation of SecureRandom instance for session ID generation Warning 해결

빈 리눅스 / 우분투 인스턴스에서 Spring Boot 웹 애플리케이션을 runnable Jar파일로 구동할 때 마주한 오류. Exception처럼 프로그램이 종료되는 것도 아니고, 애플리케이션 로직에도 문제는 없지만 서버에 요청을 보냈을 때 응답을 받기까지 매우 오랜 시간이 걸리는 상황이 발생했다. Creation of SecureRandom instance for session ID generation using \[SHA1PRNG\] took \[43,222\] milliseconds. 요청에서 응답까지 43초가 걸렸다. 다른 요청에서는 213초까지 걸리기도 했다. 원인을 분석한 포스트를 여러 개 찾아봤다. https://goni9071.tistory.com/entry/connection-reset..

Python으로 Praat 활용하기 - parselmouth Package 사용법

Praat 프로그램의 Python Wrapper 패키지 사용법을 찾아보다가, 공식 docs에도 예시코드가 거의 없고 사용법 포스팅도 거의 없길래 직접 남기는 포스트. 2020.04 ~ 2020.07 글로벌경영학과 김영한 교수님 Research Assistant 작업. 교수님의 연구 어시스턴스로 'CEO의 음성 데이터와 해당 기업 주가와의 상관관계'를 조사하는 일이 필요했다. 800여 개의 CEO 인터뷰 음성파일 (확장자 wav)에서 Formant 0 ~ Formant 5까지의 값을 추출하는 작업을 맡았다. 0.1초 단위로 Formant값을 추출해서 각 음성별로 csv 파일을 생성한 뒤, 얻은 결과를 토대로 분석을 진행해야 했다. 음성 파일에서 Pitch나 Formant를 추출하는 프로그램으로는 Praat..

2018 IBM Developer Day - 문과생의 한 달만에 Composer로 해커톤 입상까지 일대기 (18.11.14)

2018.11.14 IBM Developer Day에서 발표했던 자료입니다. 2018.08.30일에 경기도블록체인해커톤 최우수상 이후 IBM에 발표신청을 했었고, 감사하게도 발표 기회를 받을 수 있었습니다. 2020년 현재 Composer는 Deprecated된 상태입니다. IBM에서 개발을 포기한 상황이라, Fabric 2.0까지 등장한 현재는 사용하기 어렵지 않을까 합니다. IBM developer day 2018 - hyperledger composer from 동건 이

Django + nginx + Gunicorn으로 AWS EC2에 Deploy하기 (Anaconda)

2019.10 ~ 글로벌경영학과 김영한 교수님 Research Assistant 작업 내용. 환경 AWS EC2 : Ubuntu 16.04 Anaconda : Anaconda3 - Python Version: 3.5 nginx : 1.1.0 (ubuntu) Gunicorn : 19.9.0 Django : 2.2.1 전제사항 1. django 웹페이지는 manage.py runserver 작업 시 로컬과 EC2 환경에서 정상적으로 작동한다. 2. Elastic IP는 AWS에서 이미 발급받았고, EC2와 연동되어 있다. 3. Anaconda3이 ubuntu에 이미 설치되어 있다. 4. 도메인은 이미 구입해둔 상태이며, AWS Route 53에 등록되어 있다. 5. manage.py collectstatic..

성균관대학교 학생회 공약 모아보는 웹페이지 제작 프로젝트(2)

성균관대학교 학생회 공약 모아보는 웹페이지 제작 프로젝트 - (2) 수집한 정보 데이터베이스 모델링하기 171129 Python으로 신문기사를 크롤링한 다음, 4명 팀원이 2014년부터 2017년 중 1년씩 맡아서 총학과 단과대의 공약 이행 데이터를 수집하기로 했다. 보통 성대신문이 제공하는 평가는 9월 무렵 중간평가 형태로 제공되거나, 11월경 최종평가 특집기사 형태로 이루어졌다. 신문기사다 보니 공약의 내용이나 이행여부도 전부 줄글로 쓰여 있다. 그래서 각자 1년치 데이터를 조사하기 위한 기준이 필요했다. 총학과 단과대의 기준을 조금 다르게 설정했다. 총학 데이터베이스 구분기준 - Attribute들이라고 해야 하나. year : 조사 연도 (integer)name : 총학생회 이름(string) c..

성대 학생회 공약 모아보기 사이트 - 멋쟁이사자처럼 프로젝트 (1)

171122 (1) Python 웹 크롤링으로 정보 수집하기 성균관대학교 멋쟁이사자처럼 5기 - 2학기 프로젝트 학교를 몇 년 다니고 있지만, 딱히 관심을 갖고 보지 않으면 대학교 학생회가 어떤 공약을 제시했고, 얼마나 이행했는지 알기가 쉽지 않다. 프로젝트 주제 선정 과정에서 이 문제를 해결해보면 좋겠다는 이야기가 나왔고, 2014년부터 2017년까지, 4년간 총학생회와 단과대 학생회의 공약 정보를 조사하기로 했다. 이 문제를 해결하려면 어떤 과정이 필요할지 대강 그려봤다. 1. 매년 총학생회와 단과대 공약 데이터를 저장해 두는 무언가를 찾는다. 2. 조사한 데이터를 웹페이지에 활용할 수 있는 데이터베이스 형태로 만든다. 3. 데이터베이스를 활용한 웹페이지를 만든다. 이 웹페이지가 만들어지기 위해 가장..