apt-get update
-> apt-get update
sudo apt-get install -y openjdk-8-jdk
-> openjdk 8 설치 원하는 버전으로 설치가능
wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | sudo apt-key add -
OK
-> jenkins 저장소 key 다운로드
echo deb http://pkg.jenkins.io/debian-stable binary/ | sudo tee /etc/apt/source.list.d/jenkins.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FCEF32E745F2C3D5
sudo apt-get install jenkins
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package jenkins is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'jenkins' has no installation candidate
이런 오류가 발생하면
sudo vi /etc/apt/sources.list
deb https://pkg.jenkins.io/debian-stable binary/ -> 추가
sudo apt-get install jenkins
sudo systemctl daemon-reload
sudo systemctl start jenkins
sudo systemctl status jenkins
-------------------------------------------------------
sudo systemctl stop jenkins
sudo systemctl disable jenkins
sudo yum erase jenkins
sudo rm /etc/init.d/jenkins
sudo rm -rf /var/lib/jenkins
sudo rm -rf /etc/yum.repos.d/jenkins
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io
-------------
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io
docker -v
sudo systemctl enable docker && service docker start
service docker status
docker ps -a
~
~
docker stop ~
docker rm ~
docker rmi $(docker images -q)
systemctl stop docker.service
systemctl stop containerd.service
yum list installed | grep docker
~
~
~
yum erase ~
cd /var/lib/docker
rm -rf *
cd /var/run
rm docker.sock docker.pid
rm -rf docker
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose -version
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
curl 명령어를 이용하여 Gitlab CE 저장소를 우분투 패키지 시스템에 추가한다.
Gitlab CE 설치
우분투 패키지 시스템을 업데이트 하고, apt 명령어를 이용하여 gitlab-ce 패키지를 설치한다.
sudo apt update
sudo apt -y install gitlab-ce
sudo gitlab-ctl reconfigure
sudo cat /etc/gitlab/initial_root_password
a3vxsScmwIZKwGGPwcOs0l30LCs2Ud+VdU8yQVTMQ/A=
/etc/gitlab/gitlab.rb -> gitlab 설정 경로
sudo gitlab-ctl reconfigure
jksudo gitlab-ctl status
"Docker를 설치하고 CentOS 및 RHEL 8/7에서 기본 컨테이너 조작 학습-1 부"
java 설치
sudo yum install -y java-1.8.0-openjdk-devel.x86_64
alternatives --config java
docker 설치
yum install -y yum-utils
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
yum install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
yum install docker-ce docker-ce-cli
systemctl enable --now docker
systemctl status docker
sudo chmod 666 /var/run/docker.sock
-> 관리자 권한부여
docker-compose 설치
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
jenkins 설치
# 젠킨스 stable 버전 설치파일 다운로드
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
# 젠킨스 설치 key import
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
인터넷이 안되는 경우 인터넷이 되는 같은 운영체제의 VM 생성 후 래포 등록과 키값을 넣어준 뒤
# sudo yumdownload --resolve jenkins
# sudo yumdowonload --resolve git
-> 젠킨스 서버에도 git 래포 등록시 git 패키지가 없으면 GITHEAD~~~ 라는 오류가 발생함
# 젠킨스 패키지 설치
sudo yum install jenkins -y
sudo systemctl daemon-reload
sudo systemctl start jenkins
sudo systemctl status jenkins
# 젠킨스 설치확인
rpm -qa | grep jenkins
# 젠킨스 비밀번호 확인
docker exec <CONTAINER_NAME> cat /var/jenkins_home/secrets/initialAdminPassword
cat /var/lib/jenkins/secrets/initialAdminPassword
Gitlab 설치
sudo yum -y install curl vim policycoreutils python3-policycoreutils
sudo yum -y install postfix
sudo systemctl enable postfix && sudo systemctl start postfix
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install -y gitlab-ce
sudo vi /etc/gitlab/gitlab.rb
Gitlab 삭제
sudo gitlab-ctl uninstall
sudo gitlab-ctl cleanse
sudo gitlab-ctl remove-accounts
sudo dpkg -P gitlab-ce || sudo yum -y remove gitlab-ce
/opt/gitlab
/var/opt/gitlab
/etc/gitlab
/var/log/gitlab
/etc/yum.repos.d/gitlab 관련파일
1. 기존 도커 삭제
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2. yum-utils 설치
sudo yum install -y yum-utils
3. docker repo 등록
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
4. 다운받을 디렉토리 생성 및 압축
mkdir ~/docker
cd ~/docker
yumdownloader --resolve docker-ce
tar cvzf ~/docker.tar.gz *
$ sudo yum list installed | grep -i [패키지명]
$ sudo yum erase [패키지명]
$ sudo yumdownload --resolve [패키지명]
이 후 받은 파일을 압축하여 설치 대상의 서버에 설치
$ sudo yumdownload --resolve langpacks-en glibc-all-langpacks -y
$ localectl set-locale LANG=en_US.UTF-8
로케일 설정을 먼저 해결하고 gitlab을 설치해야지만 gitlab 설치시 오류가 생기지 않고 생성됩니다.
인터넷이 되는 환경에서 yumdownload 명령어를 사용하여 패키지를 받아옵니다.
또한 https://packages.gitlab.com/gitlab 원하는 버전의 gitlab 버전을 찾아 wget으로 가져온다
wget으로 가져온 gitlab을 설치 대상의 서버에 scp로 파일을 전송한 뒤
$ sudo yum install -y [].rpm
$ sudo vi /etc/gitlab/gitlab.rb
-> gitlab 설정 경로
$ sudo gitlab-ctl reconfigure
-> gitlab 설정 갱신
$ sudo cat /etc/gitlab/initial_root_password
a3vxsScmwIZKwGGPwcOs0l30LCs2Ud+VdU8yQVTMQ/A=
$ sudo vim /etc/gitlab/gitlab.rb
external_URL -> 원하는 값으로 변경
인터넷이 되는 환경에서
# 젠킨스 stable 버전 설치파일 다운로드
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
# 젠킨스 설치 key import
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
설정 후
$ sudo yumdownload --resolve jenkins
$ 받은 jenkins.rpm 파일을 scp로 대상의 서버에 전송
$ sudo yum -y install jenkins.rpm
$ sudo systemctl enable --now jenkins
젠킨스는 Gitlab과 다르게 restart하면 설정값들이 갱신됨
$ cat /var/lib/jenkins/secrets/initialAdminPassword
-> 초기 비밀번호 보는방법
Gitlab과의 pipeline 설정을 위해 git도 위와 같은 방법으로 설치해야함
또한 인터넷이 안되는 상황이므로 Plugin을 인터넷이 되는 VM에 jenkins와 필요한 plugin을 설치해서
cd /var/liv/jenkins/plugin 경로에서 플러그인을 복사하여 Jenkins 설치 대상 서버에 넣어준다.
또는 jenkins 플러그인을 수동으로 하나하나씩 넣어주는 방법도 있다
-------------
Jenkins 삭제
sudo systemctl stop jenkins
sudo systemctl disable jenkins
sudo yum erase jenkins
sudo rm /etc/init.d/jenkins
sudo rm -rf /var/lib/jenkins
sudo rm -rf /etc/yum.repos.d/jenkins
또한 private 환경에서는 외부에서 plugin을 받아오지 못해 수동으로 넣어줘야합니다.
Jenkins-Plugin site