2024-03-29 08:36:47 +00:00
|
|
|
SFR-27
|
|
|
|
1. 플랫폼 감시
|
|
|
|
2. 플랫폼 제어
|
|
|
|
- ~~하부시스템에 대한 Start, Stop, Restart, Shutdown 동작~~
|
|
|
|
- 응용프로그램 설치 및 update
|
|
|
|
|
|
|
|
3. 플랫폼 관리
|
|
|
|
- 설치된 SW 버전 관리
|
|
|
|
- S/W 별 버전 정보 이력이 표시 된다.
|
|
|
|
- 최신 SW 및 어플리케이션 관리
|
|
|
|
- ~~운영환경 관리
|
|
|
|
- 관리시스템 S/W
|
|
|
|
|
|
|
|
#### Jenkins Book
|
|
|
|
https://www.jenkins.io/doc/book/blueocean/
|
|
|
|
|
|
|
|
###### Jenkins 사용
|
|
|
|
https://dev-overload.tistory.com/39
|
|
|
|
|
|
|
|
###### Jenkins 설치
|
|
|
|
https://marindie.github.io/jenkins/Ubuntu-Jenkins-Install-KR-copy/#google_vignette
|
|
|
|
https://server-engineer.tistory.com/763
|
|
|
|
|
|
|
|
https://ppoble.tistory.com/52#google_vignette
|
|
|
|
|
|
|
|
https://hwannny.tistory.com/89
|
|
|
|
|
|
|
|
###### Jenkins + Docker
|
|
|
|
https://1minute-before6pm.tistory.com/49
|
|
|
|
|
|
|
|
##### 특정 파일만 배포
|
|
|
|
https://hye0-log.tistory.com/42
|
|
|
|
https://velog.io/@ysy3285/GitLab-Jenkins-CICD-%EA%B5%AC%EC%B6%95%ED%95%98%EA%B8%B02
|
|
|
|
https://g4daclom.tistory.com/78
|
|
|
|
|
|
|
|
젠킨스 플러그인 사이트 : https://plugins.jenkins.io/
|
|
|
|
|
|
|
|
|
|
|
|
publish over ssh 대체
|
|
|
|
SSH Plugin : https://ktaes.tistory.com/100
|
|
|
|
|
2024-04-12 09:43:44 +00:00
|
|
|
- Offline 설치 :
|
|
|
|
https://www.jenkins.io/doc/book/installing/offline/
|
|
|
|
https://emptyreset.tistory.com/96
|
|
|
|
|
|
|
|
- FTP를 이용한 Windows서버 배포
|
|
|
|
https://itkevin.tistory.com/13
|
|
|
|
|
|
|
|
- Pipline for Windows
|
|
|
|
https://garve32.tistory.com/40
|
|
|
|
|
|
|
|
- windows + ssh
|
|
|
|
https://blog.gizmo80.com/101
|
|
|
|
|
|
|
|
- IIS + FTP
|
|
|
|
https://oingdaddy.tistory.com/70
|
|
|
|
|
2024-03-29 08:36:47 +00:00
|
|
|
----
|
|
|
|
|
|
|
|
##### Docker-compose
|
|
|
|
```bash
|
|
|
|
|
|
|
|
# 인터넷 연결되는 환경에서 작업
|
|
|
|
# docker image, jenkins plugin 파일 다운받아야함.
|
|
|
|
|
|
|
|
mkdir ./jenkins && cd jenkins
|
|
|
|
mkdir ./jenkins_home
|
|
|
|
nano docker-compose-jenkins.yml
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
version: '3.8'
|
|
|
|
services:
|
|
|
|
jenkins:
|
|
|
|
image: jenkins/jenkins:lts
|
|
|
|
container_name: jenkins
|
|
|
|
user: root
|
|
|
|
# environment:
|
|
|
|
# - TZ=Asia/Seoul
|
|
|
|
privileged: true
|
|
|
|
ports:
|
|
|
|
- 9900:8080
|
|
|
|
# - 9000:50000
|
|
|
|
volumes:
|
|
|
|
- ./jenkins_home:/var/jenkins_home
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
restart: unless-stopped
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
docker-compose build && docker-compose up -d
|
|
|
|
|
|
|
|
|
|
|
|
# Jenkins Unlock Password 확인 (Unlock 이후 파일 삭제됨)
|
|
|
|
cat ./jenkins_home/secrets/initialAdminPassword
|
|
|
|
|
|
|
|
# jenkins 페이지 초기 설정
|
|
|
|
1. http://{hostname}:9900 접속하여 Unlock
|
|
|
|
2. 계정 생성
|
|
|
|
3. Jenkins URL 정보 확인 및 수정
|
|
|
|
Start using Jenkins 버튼
|
|
|
|
|
|
|
|
|
|
|
|
# Install Suggested plugins 선택하여 기본 plugin 설치
|
|
|
|
# 또는 Plugin 수동 설치 [Plugin 수동 설치]
|
|
|
|
|
|
|
|
# 추가 플러그인 설치
|
|
|
|
> Jenkins 관리 -> Jenkins Global Tool Configuration
|
2024-04-12 09:43:44 +00:00
|
|
|
1. Bitbucket Pipeline for Blue Ocean
|
|
|
|
2. Dashboard for Blue Ocean
|
|
|
|
3. Personalization for Blue Ocean
|
|
|
|
4. Display URL for Blue Ocean
|
|
|
|
5. Server Sent Events (SSE) Gateway
|
|
|
|
6. Events API for Blue Ocean
|
|
|
|
7. Blue Ocean Pipeline Editor
|
|
|
|
8. i18n for Blue Ocean
|
|
|
|
9. Autofavorite for Blue Ocean
|
|
|
|
10. Blue Ocean
|
|
|
|
11. NodeJS
|
|
|
|
12. GitLab
|
|
|
|
13. Generic Webhook Trigger
|
|
|
|
14. Gitlab Authentication
|
|
|
|
15. Gitlab API
|
|
|
|
16. GitLab Branch Source
|
|
|
|
17. Gitlab Merge Request Builder
|
|
|
|
18. Config File Provider
|
|
|
|
19. Docker
|
|
|
|
20. Docker Pipeline
|
|
|
|
21. docker-build-step
|
|
|
|
|
|
|
|
※ GITLAB ?
|
|
|
|
https://pangtrue.tistory.com/356
|
|
|
|
https://pulpul8282.tistory.com/288
|
2024-03-29 08:36:47 +00:00
|
|
|
|
|
|
|
|
|
|
|
# publish over ssh 설정
|
|
|
|
|
|
|
|
# SSH key 발급
|
|
|
|
docker exec -it jenkins bash
|
|
|
|
|
|
|
|
ssh-keygen
|
|
|
|
|
|
|
|
cat /root/.ssh/id_rsa
|
|
|
|
|
|
|
|
-------------------------------------------------------
|
|
|
|
#배포 대상 서버 설정
|
|
|
|
## jenkins 서버에서 내용복사
|
|
|
|
cat /root/.ssh/id_rsa.pub
|
|
|
|
|
|
|
|
## 배포서버 root 로그인
|
|
|
|
## 파일생성하고 복사한 내용 붙여넣기
|
|
|
|
nano /root/.ssh/authorized_keys
|
|
|
|
|
|
|
|
## 폴더, 파일 권한 변경
|
|
|
|
chmod 700 /root/.ssh
|
|
|
|
chmod 644 /root/.ssh/authorized_keys
|
|
|
|
---------------------------------------------------------
|
|
|
|
|
|
|
|
# Jenkins 페이지에서 배포서버 추가
|
|
|
|
Dashboard > Jenkins 관리 >System
|
|
|
|
Publish over SSH > 추가
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
https://velog.io/@wijoonwu/AWS-Jenkins-%EC%9E%90%EB%8F%99-%EB%B0%B0%ED%8F%AC
|
|
|
|
|
|
|
|
##### Plugin 수동 설치
|
|
|
|
```bash
|
|
|
|
|
|
|
|
|
|
|
|
cp -r jenkins_home/plugins/*.jpi jenkins_plugins/
|
|
|
|
|
|
|
|
ls | grep '.jpi' | cut -d . -f 1 | while read line; do mv $line.jpi $line.hpi; done
|
|
|
|
|
|
|
|
tar -cvf plugins.tar ./jenkins_plugins
|
|
|
|
|
|
|
|
|
|
|
|
# 수동설치 할 서버
|
|
|
|
tar -xvf plugins.tar -C /home/gmt/jenkins_home/plugins/
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
|
|
ssh-keygen
|
|
|
|
|
2024-04-12 09:43:44 +00:00
|
|
|
# Key Jenkins 등록
|
2024-03-29 08:36:47 +00:00
|
|
|
cat /root/.ssh/id_rsa
|
|
|
|
|
2024-04-12 09:43:44 +00:00
|
|
|
# 접속 대상서버로 Key 전송
|
|
|
|
ssh-copy-id -i id_rsa.pub -p 11443 root@10.200.31.136
|
2024-03-29 08:36:47 +00:00
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
2024-04-12 09:43:44 +00:00
|
|
|
- GitLab 설정
|
|
|
|
|
|
|
|
- Webhook 설정시 (Url is blocked: Requests to the local network are not allowed) 오류시
|
|
|
|
~~ /admin/application_settings/network
|
|
|
|
Outbound requests -> Allow requests to the local network from web hooks and services 체크
|
2024-03-29 08:36:47 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##### 기타
|
|
|
|
- CI(Continuous Integration)
|
|
|
|
- CD(Continuous Delivery/Deployment)
|
|
|
|
- Unity 연동 (https://github.com/KorStrix/Unity_JenkinsBuilder)
|