
docker pull jenkins/jenkins:jdk17
docker run -d --restart always --env JENKINS_OPTS=--httpPort=8080 -v /etc/localtime:/etc/localtime:ro -e TZ=Asia/Seoul -p 8080:8080 -v /jenkins:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -v /usr/local/bin/docker-compose:/usr/local/bin/docker-compose --name jenkins -u root jenkins/jenkins:jdk17
-d: 컨테이너를 데몬으로 띄운다.--restart always : 컨테이너가 어떤 이유로 종료되더라도, 자동으로 재시작 하는 옵션-e TZ=Asia/Seoul : 환경변수 설정(내부 시간을 Asia/Seoul 설정)-p 8080:8080 : 컨테이너 외부와 내부 포트에 대해 포워딩-v /tec/localtime:/etc/localtime:ro : Host OS의 localtime을 컨테이너의 localtime과 동기화-v /jenkins:/var/jenkins_home : 도커 컨테이너의 데이터는 컨테이너가 종료되면 사라지기 때문에, 볼륨 마운트 옵션을 이용하여 Jenkins 컨테이너의 /var/jenkins_home 디렉토리를 Host OS의 /jenkins와 연결하여 데이터를 유지한다.--name jenkins : 도커 컨테이너의 이름을 설정하는 옵션-u root : 컨테이너가 실행될 리눅스 사용자 계정 지정(root)docker stop jenkins
netstat -nltp
sudo mkdir /jenkins/update-center-rootCAs
sudo wget https://cdn.jsdelivr.net/gh/lework/jenkins-update-center/rootCA/update-center.crt -O /jenkins/update-center-rootCAs/update-center.crt
sudo sed -i 's#https://updates.jenkins.io/update-center.json#https://raw.githubusercontent.com/lework/jenkins-update-center/master/updates/tencent/update-center.json#' /jenkins/hudson.model.UpdateCenter.xml
docker restart jenkins
docker exec -it jenkins /bin/bash
cd /var/jenkins_home/secrets
cat initialAdminPassword
exit
docker exec -it jenkins /bin/bashapt-get update && apt-get -y install apt-transport-https ca-certificates curl gnupg2 software-properties-common && curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg > /tmp/dkey; apt-key add /tmp/dkey && add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable" && apt-get update && apt-get -y install docker-ce
groupadd -f docker
usermod -aG docker jenkins
chown root:docker /var/run/docker.sock

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose


Jenkins관리 - Credentials 클릭

Add credentials 클릭

여기서 필요한 GitLab Token 발급받는다.
https://velog.io/@m_moon_c/GitLab-Token-%EB%B0%9B%EA%B8%B0

GitLab Credential 등록 (API Token)






도커허브 토큰생성
https://hub.docker.com/
도커 허브 사이트 로그인


도커허브 레포지토리 생성

도커허브 젠킨스 Credential 추가
