본문 바로가기

전체 글

(172)
MobaXterm 으로 배스천 서버(프록시 서버) 경유해서 목적지 서버로 연결하는법 1. 메뉴에서 터널링 선택  2. New SSH tunnel 3. Local port forwading 선택 Mycomputer with MobaXterm 출발지(내 컴퓨터 즉 127.0.0.1 에 연결할 포트 선택) SSH server배스천 서버(중간에 경유하는 서버)  배스천 서버 아이피 배스천 서버 이름 연결할 포트 Remote Server목적지 서버 목적지 서버 아이피 연결할 포트 즉 내 컴퓨터에서 바로 목적지로 갈수있는 터널을 공사하는것이 터널링임 4. Settings 에서 경유지 접근에 필요한 pem키를 설정해줄수 있음  5. 이제 127.0.0.1 로 세션을 만들면 뚫린 터널에 의해 Remote Server로 바로 접근이 가능  이때 Specify username은 목적지 서버의 아이디이며 ..
자바스크립트 이벤트- HTML 요소에서 발생한 사건을 말함 -> 브라우저가 우리에게 알려줌  dom 선택하기getElementById가 단수인것은 id 속성은 유일하기 때문let title = document.getElementById('title');console.log(title);title.textContent = '법틀';let items = document.getElementsByClassName('item');console.log(items);console.log(items[0].textContent);console.log(items[1].textContent);console.log(items[2].textContent);let liList = document.getElementsByTagName('li'..
자바스크립트 DOM DOM (Document Object Model)- 문서 객체 모델 (브라우저에서 HTML문서를 객체화해서 자바스크립트로 접근및 제어가 가능하게 제공하는 API)- 브라우저가 제공하는 API 기능임 (자바스크립트가 아니다)- Tree 구조를 가짐 (DOM Tree: 하나의 부모 태그와 n개의 자식 태그를 가질수가 있음)- 트리의 각 부분을 노드라 함즉 DOM 트리에 자바스크립트가 접근이 가능  BOM(Browser Object Model) - 브라우저 객체 모델(브라우저를 객체화해서 자바스크립트가 접근및 제어가 가능하게 함)- 웹페이지를 제어할수 있게 document 객체를 제공(DOM 요소에 접근하기위한 진입점)CSSOM(CSS Object Model)- CSS 객체 모델(CSS를 객체화해서 자바스크립..
코드 컨벤션 보호되어 있는 글입니다.
개발용 SQL (MySQL) COALESCE처음으로 널이 아닌 값을 반환 ( 실무에서 널 방지용으로 쓰임 ) COALESCE(C.depart_name, '미정') LIKE 사용SELECT *FROM CAR_RENTAL_COMPANY_CAR cWHERE c.OPTIONS LIKE '%네비게이션%'ORDER BY c.CAR_ID DESC IN 사용SELECT d.ID, d.EMAIL, d.FIRST_NAME, d.LAST_NAMEFROM DEVELOPER_INFOS dWHERE 'Python' IN (d.SKILL_1, d.SKILL_2, d.SKILL_3)ORDER BY d.id ASC;이진수 다루기 (& 연산)SELECT COUNT(*) AS COUNTFROM ECOLI_DATAWHERE (GENOTYPE & 2) = 0 -- 2..
스프링 스케쥴러 @Scheduled 어노테이션을 사용하면 여러개의 스케쥴 작업이 스레드 여러개에서 도는것이 아니라 순서대로 진행한다.스레드를 사용해서 여러개의 스케쥴러를 돌리고 싶다면 아래와 같이 @Configuration 해주면 된다. @Configurationpublic class SchedulerConfig implements SchedulingConfigurer { @Override public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { ThreadPoolTaskScheduler threadPoolTaskScheduler = new ThreadPoolTaskScheduler(); threadPoolTaskSched..
우분투 레디스 인사이트 설치 문제 LaunchProcess: failed to execvp:/opt/Redis[35080:0921/133144.057040:FATAL:zygote_host_impl_linux.cc(201)] Check failed: . : Invalid argument (22)Trace/breakpoint trap (core dumped)  솔루션 AppArmor는 리눅스 보안 모듈(Linux Security Module, LSM) 중 하나로,애플리케이션이 시스템 자원에 접근하는 것을 제어하는 강제 접근 제어(MAC, Mandatory Access Control) 시스템 이 AppArmor가 비권한 사용자에 대한 User Namespace 생성을 허용하도록 설정을 변경이렇게 하면 일반 사용자(root 권한이 아닌자)는 네..
docker in docker (dind) 원리 gitlab runner를 사용해서 CI-CD를 하다보니 도커 안에서 도커를 빌드하고 푸쉬하는 경우가 생겼다.runner 의 executor가 docker이기 때문에 다양한 이미지를 쓸수 있는데 docker 이미지 또한 쓸수 있다.CI-CD를 하다보면 CI를 할때 도커를 빌드하고 푸쉬하는 과정이 생기기 마련인데 이때 완전히 격리된 환경에서 푸쉬하고 싶을때 이렇게 dind 방식을 쓸수 있다. 두번째 방법으로는 호스트 docker deamon을 쓰는 방식이 있는데 이 포스팅에서는 첫번재만 다룬다.이럴때 쓸수있는 방법이 docker in docker (dind) 방법이다. 그림으로 보면 다음과 같다.  바깥에 있는 docker는 Runner의 docker 즉 러너가 설치된 서버의 docker이고 안쪽의 doc..