docker pull jenkins/jenkins:latest
mkdir -p /etc/docker/jenkins_mount
chmod 777 /etc/docker/jenkins_mount
docker run -d -u root --name jenkins -p 8080:8080 -v /etc/docker/jenkins_mount/:/var/jenkins_home -v /etc/localtime:/etc/localtime -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker 55860ee0cd73
-d:后台运行镜像
-u root:指定容器用户为 root 用户(后面 jenkins 容器中使用 docker 命令,需要用 root 用户,不然没有权限)
--name:给容器起个别名
-p 8080:8080:将容器的 8080 端口映射到宿主机的 8080 端口
-v /etc/docker/jenkins_mount/:/var/jenkins_home:将 jenkins 的工作目录挂载到宿主机上
-v /etc/localtime:/etc/localtime:使容器和宿主机时区保持一致
-v /var/run/docker.sock:/var/run/docker.sock :将 docker.sock 映射到 jenkins 容器中,docker.sock 文件是 docker client 与 docker daemon 通讯的文件
-v /usr/bin/docker:/usr/bin/docker:将宿主机 docker 客户端映射到 jenkins 容器中,使 jenkins 容器中能使用 docker 命令
进 jenkins 容器查看 git 地址
配置在系统管理 - 全局工具配置 - path to git。不配置会拉取 git 失败
配置 git 仓库地址和 github 账号
从https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/下载 allure,并上传到 jenkins_mount 里,进入 jenkins 容器中,解压后,将 allure 地址配置在 jenkins 的系统管理 - 全局工具配置中
FROM:定义 python3.10 镜像源
WORKDIR:指定工作目录为当前文件夹,后续操作都在这个目录下,不然后面的 RUN 和 CMD 都会报错
ADD:将当前文件夹中文件添加到工作目录中
RUN:为镜像源安装依赖包
CMD:docker run 后运行的命令,run.py 是运行文件
docker system prune -af:删除所有的关闭的容器、无用的数据卷和网络以及未使用的镜像,且强制
docker build -t python:3.10 .:按照 Dockerfile 构建 python3.10 镜像
docker run -w=$WORKSPACE --volumes-from=jenkins python:3.10:启动 python 容器
在 job 中配置代码运行完后生成的 allure_temp 文件夹地址。这里因为我代码生成 allure_temp 就是在当前目录下