♥ 서문
젠킨스 마스터-슬레이브 모드는 누구에게나 친숙할 텐데요, 학습 과정에서 모두가 학습의 편의를 위해 로컬로 젠킨스 환경을 구축한 후, 이를 javaweb을 통해 구현했습니다. 도커. 오늘은 이 글을 통해 플레이 방법을 알려드릴 테니, 도움이 되셨으면 좋겠습니다.
1. 환경 준비
-
Linux 서버 준비(클라우드 서버, 자체 구축 Linux 서버 가능)
-
Linux 서버에 도커 설치
-
젠킨스 이미지를 아래로 끌어낸 다음 젠킨스 컨테이너를 시작합니다.
-
docker에서 jenkins/ssh-slave 이미지를 끌어내립니다. (jenkins에서 제공하는 이미지는 특별히 master-slave 이미지로 사용됩니다.)
-
알았어 준비는 끝났어
자동화 테스트를 배우고 싶다면 여기에서 비디오 세트를 추천합니다. 이 비디오는 스테이션 B의 전체 네트워크에 대한 최초의 인터페이스 자동화 테스트 튜토리얼이라고 할 수 있습니다. 동시에 온라인 사용자 수는 1,000에 도달했으며 수집할 메모와 다양한 Lu Dashen 기술 교환: 798478386
2. 업무 시작 준비
첫 번째 단계: docker는 원격 액세스를 활성화합니다. 포트 2375를 열어야 합니다. 이 포트는 주의해서 열어야 합니다(저는 centos를 사용합니다).
-
docker.service 파일
VIM /usr/lib/systemd/system/docker.service를 엽니다. -
docker.service 파일 [Service
]
ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker의 [Service] 아래에 다음 내용을 추가합니다. 양말 -
docker 서비스를 다시 시작하고 docker가 구성 파일을 다시 읽도록 합니다.
systemctl daemon-reload
systemctl restart docker -
포트 2375가 성공적으로 열려도 docker 데몬 프로세스가 이미 2375의 TCP 포트를 수신하고 있는지 확인하고 docker 프로세스를 확인하십시오.
-
추가 확인, 다른 머신을 통해 도커 호스트에 액세스
sudo docker -H tcp://139.129.130.123:2375 이미지
위 명령은 도커 호스트에서 docker Images 명령을 직접 실행하는 것과 동일하며 올바르게 반환될 수 있습니다. 문제 없어
2단계: 공식 웹사이트 이미지 다운로드(잊지 마세요)
-
도커 풀 젠킨스/ssh-슬레이브
3단계: jenkins/ssh-slave를 기반으로 python3 환경으로 새 이미지 만들기
-
dockerfile 디렉터리 생성
-
프로젝트 실행이 의존하는 Python 패키지 파일을 dockerfile 디렉터리에 넣습니다. (종속 파일을 생성하는 방법은 작성되지 않으며 기본적으로 귀하가 마스터입니다.)
requests==2.24.0
openpyxl
ddt
pytest
selenium
pymysql
pyyaml==5.3.1
faker
jsonpath
BeautifulReport
unittestreport
rsa
pytest-html
Appium-Python-Client
-
source.list라는 파일을 생성하고(이름은 변경할 수 없으며 이 이름이어야 함)
jenkins/ssh-slave 미러 /etc/apt/ 디렉토리
deb http://mirrors.163.com/debian 에 다음 콘텐츠를 추가합니다. / Buster 메인 비자유 contrib
deb http://mirrors.163.com/debian/buster-updates 메인 비자유 contrib
deb http://mirrors.163.com/debian/buster-backports 메인 비자유 contrib
deb -src http://mirrors.163.com/debian/ Buster 메인 비자유 contrib
deb-src http://mirrors.163.com/debian/buster-updates 메인 비자유 contrib
deb-src http:// 163.com/debian/buster-backports 주요 비자유 contrib
deb http://mirrors.163.com/debian-security/buster/updates 주요 비자유 contrib
deb-src http://mirrors.163. com/ debian-security/buster/updates 주요 비자유 기여
Sources.list 설명: 공식 jenkins/ssh-slave에는 Python이 없으므로 설치 패키지를 업데이트하려면 Python을 설치해야 합니다. 이때 기본 미러 소스를 사용하면 속도가 매우 느려지므로 변경합니다. 소스, 원본 파일을 덮어쓰면 됩니다. 여기에서 자신의 버전 번호에 따라 수정해야 합니다. 내 버전은 버스터 버전입니다. 물론 다운로드한 후에도 내 버전과 동일해야 합니다. -
Dockerfile 작성
FROM jenkins/ssh-slave:latest
USER root
WORKDIR /app
ADD requirements.txt /app
ADD sources.list /etc/apt/
RUN echo export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8" >> /etc/profile
RUN apt-get -y update && apt-get -y install python3 && apt-get -y install python3-pip && pip3 install -r requirements.txt -i https://pypi.douban.com/simple
-
이미지 빌드 명령
docker build -t jenkins/ssh-slave:v2.0 을 실행합니다.
4단계: Jenkins 슬레이브 노드 구성
-
노드 구성 페이지로 이동하여
jenkins 관리 ---> 슬레이브 노드(노드 관리) ---> ConfigureClouds
다음 페이지가 표시됩니다.
-
새 클라우드 추가를 클릭하고 드롭다운 목록에서 docker를 선택합니다. 클릭하면 다음 페이지로 이동합니다.
-
Docker Cloud 세부 정보를 클릭하여 구성하면 페이지는 다음과 같습니다.
-
Docker Agent 템플릿을 클릭하면 다음 페이지가 표시됩니다.
-
아래 고급 옵션을 클릭하세요
-
고급 옵션의 구체적인 구성은 아래 그림과 같습니다.
-
구성이 완료된 후 저장하는 것을 잊지 마세요. 좋은 습관을 기르려면 구성하는 동안 저장하는 것이 가장 좋습니다.
5단계: 젠킨스 작업에 도커 슬레이브 바인딩
-
새 작업을 만들고 Freestyle Project를 선택하세요.
-
노드를 실행하도록 프로젝트를 제한하고 새로 생성된 노드(레이블)를 선택합니다.
-
힘내 구성
-
셸 명령 구성
-
구성 테스트 보고서
6단계: 프로젝트 구축
-
빌드를 시작하면 빌드 대기열에 다음 그림이 표시됩니다.
2. 빌드가 완료된 후 프로젝트를 클릭하면 여기에 오면 빌드 기록이 있을 것입니다. 클릭하면 빌드 로그를 볼 수 있습니다.
3. 테스트 보고서 보기
4. 시험성적서는 다음과 같습니다.