docker-compose + jenkins搭建部署
一、docker的下载安装
docker安装环境条件
# Docker安装环境条件 # 1、Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。 # 2、Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。内核编译时需要激活namespace,CGgroup,netfilter,veth等特性,还对iptablest等工具版有依赖要求。 # 查看linux版本 需要CentOS7版本以上 rpm -q centos-release # 查看内核版本 uname -r
卸载旧的docker
# 卸载旧的安装的组件 sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
安装依赖及设置存储库
# 安装yum-utils sudo yum install -y yum-utils # 设置稳定的存储库 sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker
# 直接安装最新Docker引擎和容器 sudo yum -y install docker-ce docker-ce-cli containerd.io # 安装完成后查看版本 docker -v
或者安装指定版本
# 列出可用版本 yum list docker-ce --showduplicates | sort -r # 安装指定版本 sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io # 例子 sudo yum install docker-ce-18.09.1 docker-ce-cli-18.09.1 containerd.io
docker的操作
# 启动docker sudo systemctl start docker # 停止docker systemctl stop docker # 重启 systemctl restart docker # 查看状态 systemctl status docker # 设置开机自启动 systemctl enable docker # 查看信息 docker info # 查看帮助文档 docker --help # 卸载 - # 1、卸载 Docker 引擎、CLI 和容器包 sudo yum remove docker-ce docker-ce-cli containerd.io - # 2、主机上的图像、容器、卷或自定义配置文件不会自动删除。要删除所有图像、容器和卷 sudo rm -rf /var/lib/docker - # 3、必须手动删除任何编辑的配置文件 sudo rm 配置文件
验证docker是否安装成功
# 下拉并运行hello-world镜像 docker run hello-world
阿里镜像源做为docker镜像源
》注册阿里账号》搜索:容器镜像》镜像加速器》选择CentOS》直接复制命令运行
二、docker-compose安装
docker-compose安装
sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose # 1.21.2 是docker-compose版本,可以根据自己需求在github查找版本 # docker-compose-$(uname -s)-$(uname -m) 在centos7中输出为docker-compose-Linux-x86_64
docker-compose命令
# docker-compose 命令默认使用的配置文件是当前目录中的 docker-compose.yml 文件 docker-compose up # -f 指定其他配置文件。可以添加多个 -f 选项,docker-compose 会自动合并它们,当然也会根据先后顺序把一些重复的配置项覆盖掉 # 自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作。不过在前台打印信息,ctrl+c容器就会停止 docker-compose -f docker-compose.yml -f docker-compose-dev up # 后台启动并运行 docker-compose -f docker-compose.yml -f docker-compose-dev up -d
三、docker-compose+jenkins部署
关于jenkins的docker-compose.yml文件
version: '3.1' services: jenkins: image: jenkins/jenkins:lts volumes: # 挂载目录 本地文件夹目录:容器文件夹目录 - /data/jenkins/:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock - /usr/bin/docker:/usr/bin/docker - /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 ports: # 绑定端口 - "8080:8080" expose: # 暴露端口 - "8080" - "50000" privileged: true user: root restart: always container_name: jenkins environment: JAVA_OPTS: '-Djava.util.logging.config.file=/var/jenkins_home/log.properties'
在docker-compose.yml的目录输入
docker-compose up -d
输入网址 ip + 端口访问,若显示页面,则jenkins启动成功
四、异常处理
- 如果创建任务时,没有maven项目选项,则在下载安装对应maven插件
- 如果构建环境没有send ssh选项,则下载安装对应Publish Over SSH插件
版权声明:本文为weixin_39147889原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。