728x90
반응형

전체 글 48

[Jenkins] 깃허브와 연동하여 엔진엑스-리액트 자동배포 하기

서론 프로젝트를 진행하면서 업데이트가 있을 때마다 배포하는 과정은 매우 번거롭다. 특히 한창 개발 중인데 https 연결이 필요한 기능을 테스트하기 위해서는 반드시 서버에 배포가 된 상태여야 한다. 그래서 프론트엔드 담당이 어떤 부분을 수정하면 백엔드 담당이 매번 재배포했어야 하기 때문에 번거롭기도 하고 실시간으로 소통이 안되면 작업이 지연될 수 밖에 없어서 이를 해결하고자 자동배포를 구축하였다. +) 실제로 설정한 순서대로 하다보니 설정 중간중간에 작업해주는 과정이 몇 번 있다. 젠킨스 프로젝트 설정을 한번에 하고 싶다면 2, 4, 6번을 먼저 진행해준 뒤 1번부터 읽으면 된다. 본론 1. 젠킨스에 프로젝트 추가 젠킨스 페이지에 접속해서 새로운 Item으로 들어간다. 이름을 적어주고, Freestyle..

웹, 앱 2022.09.30

[Jenkins] Linux-centOS7에 젠킨스 설치 및 초기 설정

※ 젠킨스를 사용하기 위해서는 Java 8 또는 Java 11 버전이 필요하다. https://danpung2.tistory.com/42 [Java] Linux-centOS7에 openJDK 11 설치하기 1. 설치 가능한 JDK를 확인 아래 명령어로 설치 가능한 JDK를 확인한다. yum list java*jdk-devel 2. 다운받을 버전의 자바를 설치해준다. 지금은 11을 설치할 것이므로 다음과 같은 명령어로 설치한다. yum danpung2.tistory.com 1. 젠킨스 설치 # 젠킨스 설치파일 다운로드(stable 버전) sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo # ..

웹, 앱 2022.08.29

[Java] Linux-centOS7에 openJDK 11 설치하기

1. 설치 가능한 JDK를 확인 아래 명령어로 설치 가능한 JDK를 확인한다. yum list java*jdk-devel 2. 다운받을 버전의 자바를 설치해준다. 지금은 11을 설치할 것이므로 다음과 같은 명령어로 설치한다. yum install java-11-openjdk-devel.x86_64 3. 설치 확인 javac -version 자바 버전이 나온다면 정상 설치된 것이다. 4. 자바 경로 설정 다음 명령어로 심볼링 링크를 찾아준다. readlink -f /usr/bin/javac 경로가 나올 것인데, 마지막의 /bin/javac를 제외한 부분을 복사해둔다. 아래 명령어로 설정을 열어준다. vim /etc/profile 가장 아래에 다음과 같이 적어준다. export JAVA_HOME=(복사한 경..

자바 2022.08.29

[이펙티브 자바] 생성자 대신 정적 팩터리 메서드를 고려하라(아이템 1)

장점 1. 이름을 가질 수 있다. // Example public class Person{ private String job; // 생성자 public Person(String job){ this.job = job; } // 정적 팩터리 메서드 static Person jobOf(String job){ return new Person(job); } } public class Main{ public static void main(String[] args){ // 생성자 이용 Person p1 = new Person("student"); // 정적 팩터리 메서드 이용 Person p2 = Person.jobOf("student"); } } 위의 예시에서 Person 인스턴스를 만들 때, 생성자를 이용하는 경..

자바 2022.08.24

[이슈] Jenkins React 빌드 실패 Treating warnings as errors because process.env.CI = true. Most CI servers set it automatically.

상황 Jenkins로 React 자동 배포를 하기 위해 빌드를 하는 과정에서 Treating warnings as errors because process.env.CI = true. Most CI servers set it automatically. 이슈 발생 원인 - 경고를 에러로 인식하여 빌드가 실패되는 것 - 기본적으로 CI=true가 설정되어 있는 것이 원인 해결 - 빌드 시 npm run build 대신 CI=false npm run build 로 해결

이슈 2022.08.22

[현문hyun답] ORM이란? JPA, Sequelize 등을 쓰는 이유는?

서론 스프링부트로 개발 할 때는 처음 배울 때 JPA로 배웠기 때문에 자연스럽게 JPA를 적용했다. 그런데 Node.js로 개인 프로젝트를 진행하다보니 데이터베이스 구축과 관리가 아니라 개발을 하면서 쿼리문을 쓰는게 낯설게 느껴졌고 새삼스럽게 ORM의 존재를 인식하게 되었다. Node.js에도 역시 Sequelize라는 ORM이 있었고 이번 기회를 통해 ORM에 대해 정리해보는 시간을 갖기로 했다. ORM ORM(Object Relational Mapping)은 객체 지향 프로그래밍에서 객체로 관계형 데이터베이스를 관리하는 기술이다. 스프링의 JPA가, 노드js의 Sequelize가 대표적인 예이다. ORM을 사용하는 이유? 기존 개발 방식은 SQL로 데이터베이스를 관리하는 것이었다. 이런 방식의 개발은..

현문hyun답 2022.08.18

[현문hyun답] MySQL vs MariaDB, 어떤 것을 쓸까?

서론 데이터베이스에는 RDBMS와 NoSQL이 있다. RDBMS의 대표적인 예로는 MySQL이 있고, NoSQL의 대표적인 예로는 MongoDB가 있다. 그런데 나는 처음 데이터베이스를 다룰 때 mariaDB를 사용했다. MySQL과 유사하다는 것만 알고 있었기에 MySQL과 MariaDB의 차이에 대한 질문에 어떤 답변을 해야할 지 정리해보았다. MySQL 1990년대 중반에 개발. 시장에서 사용할 수 있는 오픈 DB. SQL 언어를 사용. 단순 쿼리 처리 성능이 압도적으로 우수하고 오랜 시간 동안 사용되어온만큼 성능이 꾸준이 개선되었고 신뢰성이 높음. 오픈 소스이며, 다중 사용자와 다중 스레드를 지원하고 있어 C/C++, Java 등 여러 프로그래밍 언어를 위한 다양한 API를 제공. 윈도우, 리눅스..

현문hyun답 2022.08.10

[웹서버] 라즈베리파이 서버 구축 A to Z (3) - Tomcat 설치 및 설정

3단계: Tomcat 설치 및 설정 톰캣을 설치하기 전에, 먼저 자바를 설치해준다. 버전은 본인에게 맞는 것으로 설치하면 된다. 나는 openjdk 8을 설치했다. sudo apt-get install openjdk-8-jdk 그 다음으로, apt를 통해서 톰캣8을 설치하려고 했더니 뭐가 잘못된건지 해결이 안되길래 톰캣 사이트에서 직접 다운받았다. https://tomcat.apache.org/ Apache Tomcat® - Welcome! The Apache Tomcat® software is an open source implementation of the Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSo..

웹, 앱 2022.08.03

[웹서버] 라즈베리파이 서버 구축 A to Z (2) - Nginx 설치 및 설정

2단계: Nginx 설치 및 설정 나는 Apache 대신에 Nginx를 이용했다. Apache와 Nginx, 그리고 이 다음에 설치할 Tomcat의 차이점은 아래에서 확인할 수 있다. https://danpung2.tistory.com/35 [현문hyun답] Apache, Nginx, Tomcat 이란 뭐고 차이점은 뭘까? 서론 웹서버를 구축하면서 Apache와 Nginx, 그리고 Tomcat 중에 선택해야 했다. 스프링 부트를 배우면서 Tomcat이 내장되어 있다는 건 알았지만 Tomcat이 뭔지는 몰랐고, 참여하고 있는 프로젝트에서는 Ap danpung2.tistory.com sudo apt-get install nginx 위 명령어로 nginx를 설치했고 나는 기존의 설정 파일을 전부 삭제한 후 설..

웹, 앱 2022.08.03

[현문hyun답] Apache, Nginx, Tomcat 이란 뭐고 차이점은 뭘까?

서론 웹서버를 구축하면서 Apache와 Nginx, 그리고 Tomcat 중에 선택해야 했다. 스프링 부트를 배우면서 Tomcat이 내장되어 있다는 건 알았지만 Tomcat이 뭔지는 몰랐고, 참여하고 있는 프로젝트에서는 Apache와 Tomcat을 사용하다가 Nginx와 Tomcat으로 바꿨다고 한다. 이 프로젝트에서는 내가 서버를 관리한 게 아니었고, 애초에 웹서버에 대한 지식이 없었기 때문에 그냥 넘어갔는데 이번에 웹서버를 구축하면서 이 세 가지의 차이점을 알아보게 되었다. 가장 궁금했던 건, 세 가지 전부 웹서버라고 하면서 왜 두 가지를 같이 쓰는지였다. Web Server(웹서버) 먼저 웹서버에 대해 먼저 알아보자. 위키백과에서는 다음과 같이 설명하고 있다. 웹 서버(web server)는 다음의 ..

현문hyun답 2022.07.27
728x90
반응형