1. CI/CD (Continuous Integration/Continuous Delivery) - CI 서버에 빌드/테스트의 자동화 과정입니다. CI는 개발자를 위한 자동화 프로세스인 지속적인 통합(Continuous Integration) 을 의미합니다. - CD 배포 자동화 과정입니다. CD는 지속적인 서비스 제공(Continuous Delivery) 또는 지속적인 배포(Continuous Deployment) 를 의미합니다. - CI/CD의 종류 Jenkins CircleCI TravisCI Github Actions 등이 있습니다. 자바 어플리케이션은 Jenkins를 가장 많이 사용합니다. CI / CD환경을 구축해주기 위해 필요한 개념으로 핫한 기술이 하나 있죠. 컨테이너 기반의 형상관리, 배..
1. apt로 외부 파일 설치(웹 서버 구현) 1) 향상된 패키지 관리 도구 apt - 외부 파일을 리눅스에 설치하는 방법으론 크게 3가지가 있습니다. - wget명령어로 다운하기 (window의 브라우저와 비슷합니다.) - FTP통신으로 tar파일을 옴기고 압축해제하고 실행하기 - apt명령문으로 파일 다운받기 apt는 인터넷을 통해 원격에 저장된 패키지를 다운로드 받아서 설치해주는 향상된 패키지 관리 도구 입니다. 향상된 패키지 관리 도구 apt는 필요한 파일을 다운로드 하고 환경 설정까지 처리 해줍니다. 패키지 관리 도구 업데이트 apt-get update 패키지 찾기 apt search 패키지 다운로드하기 apt-get install 실행(자바설치) apt설치 시 환경변수 설정은 자동으로 이루어 ..
1. 리눅스의 파일 구조, 기초 명령문 1) 리눅스의 폴더 구조 리눅스의 폴더구조는 /로 부터 시작됩니다. root아래에는 다양한 폴더들이 있습니다. 핵심 폴더는 아래와 같습니다. /home (사용자의 홈 디렉토리) (윈도우 c/사용자) /usr (응용프로그램 저장소) /etc (프로그램이 시작되기 위해 필요한 설정파일 저장소) /var (시스템 운영중에 발생한 데이터와 로그가 저장되는곳) 리눅스의 명령문에는 많은 옵션들이 들어가게 됩니다. 이런 옵션들은 처음부터 다 외우기보다는 주로 사용되는 옵션들은 기억하고 좀 더 궁금하다면 구글에 검색하세요. 2) 옵션 - 경로 이동 명령문 cd 현재 위치 확인=pwd 경로 이동=cd 경로 폴더 구조 확인=ls, ls -a, ls -l, ls -al - 절대 경로와..
1. AWS란? - Amazon Web Services(AWS)는 지금은 흔히 클라우드 컴퓨팅이라고 알려진 웹 서비스 형태로 기업에 IT 인프라를 제공. - 시중에 제공하는 IT인프라구축 서비스 개수만 250개 이상 - 클라우드 컴퓨팅이란? 서버 환경을 직접 구축하려면 컴퓨터장비, 운영체제, 네트워크, 보안, 소프트웨어 등의 다방면의 지식을 필요로 합니다. 또 서버를 지속적을 운영하고 관리하는데, 상당한 노력과 비용이 들어갑니다. 클라우드 컴퓨팅이란 서버(컴퓨터)를 가상으로 구축하고 사용자에게 환경을 제공해주는 것을 의미합니다. - 온프레미스 vs 클라우드 컴퓨터 온프레미스는 기업의 서버를 자체적으로 보유하고 있는 서버에 직접 설치하고 운영하는 방식 입니다. (데이터센터) 클라우드는 필요한 IT 자원만을..
1. 개발자가 알아야 하는 리눅스 명령문 1) 운영 체제(os란?) - 사용자의 하드웨어, 시스템 리소스를 제어하고 프로그램에 대한 일반적 서비스를 지원하는 시스템 소프트웨어이다. - 우리가 주로 사용하는 운영체제는 window, mac os가 있다. 2) 개발자는 Linux를 알아야 하나요? - 운영환경은 보통 linux 시스템을 사용하는 경우가 많다. 2. 리눅스 설치 - 리눅스 운영체제를 사용해보기 위해서는 운영체제 설치가 필요합니다. - 우리 컴퓨터는 이미 window가 설치되어 있기 때문에 가상 머신을 활용해서 리눅스 운영체제를 설치해야 합니다. - 가상머신 vmware 설치, 가상 머신에 리눅스 배포판 설치 1) 가상머신 vmware 설치 VMware workstation player다운 ht..
1. 프로젝트 생성 1) 페이지 내에서 pj_num을 가지고 mapping 테이블에 팀원을 초대하는 부분에서 last_insert_id를 사용해서 컨트롤러에서 insert가 팀원 수만큼 반복해서 돌아가게 작성하여 mapping 테이블에 값을 넣었음(아래 방법 사용) - project.mapper INSERT INTO USER_PROJECT (pj_name, pj_startdate, pj_enddate, pj_description, pj_writer) VALUES (#{pjName}, #{pjStartdate}, #{pjEnddate}, #{pjDescription}, #{pjWriter}); SELECT LAST_INSERT_ID() INSERT INTO MAPPING (pj_num, user_id, i..
초안에서 맡았던 부분 - 홈 화면에 리스트, 최근 활동 내역, 프로젝트 생성 페이지, 캘린더, 통계(전반적인 ui 틀 구성 하고 배치함) user 로그인 카카오 네이버 로그인 버튼 색 변경 필요 아이디 기억하기 체크 시 아이디 입력창에 입력한 아이디 남기기 유효성 검사 아이디 비밀번호 찾기 기능 모달 구현 or 관리자에게 문의하여 초기화 비밀번호 일정 횟수 틀렸을 시 계정 비활성화 → 관리자에 문의하세요 alert 띄우기 session 저장하여 마지막 접속기록 db에 저장 로그아웃 시 세션종료 user 회원가입 메인 제목 전체 보이지 않아 수정이 필요함 아이디 중복 검사 아이디 비밀번호 유효성 검사 비밀번호 확인 admin 회원목록 전체 선택 시 하위 체크박스 모두 체크 화면 로드 시 데이터 DB에서 가..
1일차 기록(3/2) - 메인 화면: 내일은 플로우 참고해서 홈 화면 구성하기 새 프로젝트 생성(사이드 바로 구성) 참여 중인 프로젝트(전체 프로젝트/즐겨찾는 프로젝트로 나누기-별로 표시하면 즐겨찾는 프로젝트로 이동) 프로젝트에 마우스를 가져다 대면 해당 프로젝트의 팀원의 진척률을 확인할 수 있는 차트 구성 최근 활동 내역은 새 글을 게시 하면 오늘 시간 계산해서 프로젝트 명과 일정 쓸 수 있도록 구성 2일차 기록(3/3) - user 화면 구성하기 차트 페이지(팀 진척률 보기 ui/내 진척률 보기 ui) 일정(캘린더 구성-fullcalendar 사용)-여기에 이제 일정 등록하고, 등록 했을 때 calendar에 내용 생성되도록 구성해야 함 3일차 기록(3/6) - 추가 기능 구상 위에 알림창(댓글이나 ..