전체 글 146

[Jenkins] GitLab연동

1. pipeline 2. pipeline 설정 Definition : pipeline script from SCM Script Path : Jenkinsfile 3. Jenkins plugin 설치 Gitlab 플러그인 Webhook 플러그인 설치 ->이것들을 설치해야 Build when a change is pushed to Gitlab~~ 옵션을 Jenkins 내 Build Trigger에서 찾을 수 있다.(Jenkins pipeline 프로젝트 생성 참고) 4. WebHook 설치 git에 push가 감지되면, Jenkins에서 자동으로 재빌드가 되어야 하기 때문에, Webhook을 통해, git에 push를 했을때, 감지가될 수 있도록 해당부분을 세팅하는 것임. 5. Secret Token 발급..

Back-End/Study 2023.08.11

[Docker] 명령어 정리

컨테이너 생성 $ docker create [image] 컨테이너 시작 $ docker start [container] 컨테이너 생성 및 시작 $ docker run [image] 컨테이너 시작 $ docker run \ -i \ # 컨테이너에 키보드 입력이 필요한경우 -t \ # 컨테이너에 TTY할당하여 터미널 이용이 필요한 경우 --rm \ # 컨테이너 실행 종료후 자동 삭제가 필요할때 -d \ # 백그라운드로 실행하고 싶을 때 --name hello-world \ # 이름을 지정하고 싶을때 -p 80:80 \ # 포트 바인딩을 하고 싶을 때 -v /opt/example:/example \ # 볼륨 바인딩을 하고 싶을 때 bbangi/hello-world:latest \ # 실행할 이미지는 그냥 적어..

Back-End/Docker 2023.08.11

[Jenkins] Github연동

1.Jenkins 관리 -> System 2. Github 설정 -> Secret text 3. 하단에 Add 클릭 -> test 4. 새로운 Item 5. 원하는 프로젝트 명과 Freestyle project 클릭 6. 프로젝트 url입력 7. git주소 입력 -> 에러발생.. Failed to connect to repository : Command "git.exe ls-remote -h -- https://github.com/BootCampFire/Back-end.git HEAD" returned status code 128: stdout: stderr: fatal: Cannot prompt because user interactivity has been disabled. remote: Suppor..

Back-End/Study 2023.08.10

[MariaDB] Driver org.mariadb.jdbc.Driver claims to not accept jdbcUrl

🚫 1차 오류 발생 java.lang.RuntimeException: Driver org.mariadb.jdbc.Driver claims to not accept jdbcUrl, [DATABASE] at com.zaxxer.hikari.util.DriverDataSource.(DriverDataSource.java:110) ~[HikariCP-4.0.3.jar!/:na] at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331) ~[HikariCP-4.0.3.jar!/:na] at com.zaxxer.hikari.pool.PoolBase.(PoolBase.java:114) ~[HikariCP-4.0.3.jar!/:na] at co..

Back-End/Issues 2023.08.04

Chater03. 운영체제 - 메모리

3.2 메모리 CPU는 그저 '메모리'에 올라와 있는 프로그램의 명령어들을 실행할 뿐이다. 메모리 계층과 메모리 관리를 알아보자. 3.2.1 메모리 계층 메모리 계층은 레지스터, 캐시, 메모리, 저장장치로 구성되어 있다. 레지스터 : CPU안에 있는 작은 메모리, 휘발성, 속도 가장 빠름, 기억 용량이 가장 적다. 캐시 : L1, L2 캐시를 지칭한다. 휘발성, 속도 빠름, 기억 용량이 적다. 참고로 L3 캐시도 있다. 주기억장치 : RAM을 가리킨다. 휘발성, 속도 보통, 기억용량이 보통이다. 보조기억장치 : HDD, SSD를 일컬으며 비휘발성, 속도 낮음, 기억 용량이 많다. 램은 하드디스크로부터 일정량의 데이터를 복사해서 임시 저장하고 이를 필요 시마다 CPU에 빠르게 전달하는 역할을 한다. 계층 ..

Chater03. 운영체제 - 운영체제와 컴퓨터

3.1 운영체제와 컴퓨터 하드웨어와 소프트웨어(유저 프로그램)를 관리하는 일꾼인 운영체제와 CPU, 메모리 등으로 이루어진 컴퓨터를 알아보겠다. 3.1.1 운영체제의 역할과 구조 운영체제의 역할 운영체제의 역할은 크게 네 가지가 있다. CPU 스케줄링과 프로세스 관리 : CPU 소유권을 어떤 프로세스에 할당할지, 프로세스의 생성과 삭제, 자원 할당 및 반환을 관리한다. 메모리 관리: 한정된 메모리를 어떤 프로세스에 얼만큼 할당해야 하는지 관리한다. 디스크 파일 관리 : 디스크 파일을 어떠한 방법으로 보관할지 관리한다. I/O 디바이스 관리 : I/O 디바이스들인 마우스, 키보드와 컴퓨터 간에 데이터를 주고받은 것을 관리한다. 운영체제의 구조 유저 프로그램이 맨 위에 있고 그 다음으로 GUI, 시스템콜, ..

Chater02. 네트워크 - HTTP

2.5 HTTP 2.5.1 HTTP/1.0 HTTP/1.0은 기본적으로 한 연결 당 하나의 요청을 처리하도록 설계되었다. 이는 RTT 증가를 불러오게 되었다. RTT 증가 서버로부터 파일을 가져올 때마다 TCP의 3-웨이 핸드셰이크를 계속해서 열어야 하기 때문에 RTT가 증가하는 단점이 있다. RTT 패킷이 목적지에 도달하고 나서 다시 출발지로 들어오기까지 걸리는 패킷 왕복 시간 RTT의 증가를 해결하기 위한 방법 매번 연결할 때마다 RTT가 증가하니 서버에 부담이 많이가고 사용자 응답 시간이 길어졌다. 이를 해결하기 위해 이미지 스플리팅, 코드 압축, 이미지 Base64 인코딩을 사용하곤 한다. 이미지 스플리팅 많은 이미지를 다운로드받게 되면 과부하가 걸리기 때문에 많은 이미지가 합쳐 있는 하나의 이미..

Chater02. 네트워크 - IP 주소

2.4 IP 주소 앞서 인터넷 계층에 IP주소를 쓴다고 했는데 IP주소에 대해 조금 더 자세히 알아보겠다. 2.4.1 ARP 컴퓨터와 컴퓨터 간의 통신은 흔히들 IP 주소 기반으로 통신한다고 알고 있지만 정확히 이야기하자만 IP주소에서 ARP를 통해 MAC주소를 찾아 MAX 주소를 기반으로 통신힌다. ARP(Address Resolution Protocol)란 IP주소로부터 MAC 주소를 구하는 IP와 MAC 주소의 다리 역할을 하는 프로토콜이다. ARP를 통해 가상 주소인 IP주소를 실제 주소인 MAC주소로 변환한다. 이와 반대로 RARP를 통해 실제 주소인 MAC 주소를 가상 주소인 IP주소로 변환하기도 한다. 앞의 그림처럼 장치가 ARP Request 브로드캐스트를 보내서 IP 주소인 120.70...