LG CNS 부트캠프 학습일지 32일차
학습 내용
- DevOps Tools 특강
- Git 사용법
- Docker 사용법
- AWS 사용법
- Jenkins 사용법
DevOps Tools 특강
개발한 웹 어플리케이션을 배포하는 방법에 대해서 배웠다. Git 이랑 Docker 사용법은 조금 알고 있었기 때문에 재미있게 들었다. AWS 에서 EC2 인스턴스를 만드는 방법과 Jenkins 사용방법은 처음 배우는 것이라서 집중해서 들었다.
AWS 사용법
AWS 사용방법을 글로 정리하기는 쉽지 않다. 버튼을 이것저것 누르면서 화면을 옮겨가야 하기 때문이다. 핵심은 아마존의 서버를 빌리는 것이다. 서버를 사용하는 만큼 돈을 내는 방식인데, 자칫 잘못하면 요금 폭탄을 맞는다는 이야기를 많이 들어서 조심스러운 부분이다.
서버에 SSH로 접속할 수 있으면 이후의 과정은 셀프호스팅을 할 때와 동일하다. 리눅스 명령어를 사용하는 것과 도커 명령어를 사용하는 것은 검색하거나 인공지능한테 물어봐가면서 하게될 것 같다. 물론 명령어를 외워서 사용한다면 생산성이 크게 늘어날 것이다.
Jenkins 사용법
지속적 통합과 지속적 배포를 자동화하기 위해 사용하는 도구이다. 이름은 들어봤지만 오늘 처음 사용해봤다. Jenkins를 설치하기 위해 Jenkin 전용 저장소를 우분투 운영체제에 별도로 추가해주었는데, 과연 이 방식이 좋은지를 모르겠다. Jenkins 자체를 도커 컨테이너로 사용하는 것이 좋지 않을까?
Jenkinsfile 이라는 별도의 스크립트 파일을 사용한다. 크게 어려워보이지는 않는데, 스크립트 파일 작성방법에 익숙해져야할 것이다. 깃허브에 프론트엔드와 백엔트 소스코드를 올리고 AWS 인스턴스에 Jenkins를 설치한 다음 Jenkins와 깃허브와 연동하는 방법을 배웠다. 그냥 GitHub Action을 사용하면 되지 않을까 생각했는데, GitHub Pages를 사용하는 경우에는 그래도 될 것 같다. 하지만 AWS 등 외부 서버에서 통합과 배포를 할 때는 Jenkins와 같은 별도의 도구를 사용하게 될 것 같다.
결론
오늘 배운 명령어들은 인공지능에게 물어보면 얼마든지 잘 알려준다. 하지만 명령어를 이해하고 사용해야 생산성이 높아질 것이다. 그 필요성은 절실히 느끼지만 코드를 작성하고 기능을 구현하는데 정신이 팔려서 소홀히 했던 부분이다. 특히 Git 명령어 중에 commit 작성자 정보를 수정하는 명령어는 이번 기회에 숙지하기로 하자.
저장소의 작성자 정보 변경하기
1
2
3
4
5
git config --global user.name "New Author Name"
git config --global user.email "<email@address.example>"
git config user.name "New Author Name"
git config user.email "<email@address.example>"
단일 커밋 작성자 정보 업데이트
1
git commit --amend --no-edit --reset-author
전체 커밋 작성자 정보 업데이트
1
git rebase -r --root --exec "git commit --amend --no-edit --reset-author"
Comments powered by Disqus.