博客
关于我
一套基础自动化部署搭建过程
阅读量:331 次
发布时间:2019-03-03

本文共 1749 字,大约阅读时间需要 5 分钟。

公司技术团队从零开始搭建开发环境的故事

作为一家初创公司,技术团队从零开始搭建开发环境的经历一定充满挑战。经过两天的奋战,我们最终成功搭建了必要的工具,这对团队的后续开发工作起到了至关重要的作用。本文将记录我们从环境搭建到工具配置的全过程,希望能为有类似需求的开发者提供一些参考。

资源与选择

在资源匮乏的情况下,我们只有一台CentOS服务器。为了避免使用传统的yum安装带来的管理复杂性,我们选择了Docker。Docker的容器化技术使得环境一致性和维护变得更加简单。

测试环境搭建

为了快速搭建一个包含Nginx、PHP-FPM、MySQL等常用服务的测试环境,我们选择了laradock。laradock提供了丰富的预制镜像和配置,适合快速部署开发环境。通过以下命令,我们可以快速启动所需服务:

# 克隆laradock仓库git clone https://github.com/laradock/laradock.git# 复制环境配置cp env-example .env# 启动服务docker-compose up -d nginx php-fpm mysql redis# 进入工作区docker-compose exec workspace bash

Nginx的配置文件可以找到 /laradock/nginx/sites/ 目录下。通过 docker-compose exec nginx -s reload 命令可以动态重启Nginx服务。

GitLab部署

在环境搭建完成后,我们需要一个代码管理平台。选择GitLab的原因是它提供了强大的代码托管功能。通过以下Docker命令,我们可以快速启动一个GitLab服务器:

# 启动GitLabdocker run -d \    -p 443:443 -p 8080:80 -p 222:22 \    --name gitlab \    --restart always \    -v /home/gitlab/config:/etc/gitlab \    -v /home/gitlab/logs:/var/log/gitlab \    -v /home/gitlab/data:/var/opt/gitlab \    gitlab/gitlab-ce# 访问GitLab需要几秒钟

启动成功后,可以通过宿主机的域名访问GitLab界面。通过修改配置文件,我们可以将SSH端口设置为222,同时域名设置为外部访问地址。

Jenkins配置

为了实现自动化部署,我们选择了Jenkins。通过以下命令,我们可以快速启动一个Jenkins服务器:

# 启动Jenkinsdocker run -d \    -p 8181:8080 -p 50000:50000 \    --name myjenkins \    -v /home/jenkins/:/var/jenkins_home \    jenkins/jenkins

Jenkins容器启动后会自动生成初始化密码,可以通过 docker logs 查看密码,或者通过 /home/jenkins/secrets/initialAdminPassword 文件读取。

插件安装与配置

Jenkins安装完成后,我们需要安装一些必需插件。推荐安装的插件包括:

  • GitLab插件(支持GitLab代码托管)
  • Node.js插件(支持前端开发)
  • SSH插件(支持代码推送)

通过 Jenkins 管理界面进入系统设置,配置工具安装和插件管理。我们还需要配置JDK、Git、Node.js等开发工具,选择自动安装方式即可。

创建并配置项目

新建一个自由风格的项目,选择Git仓库地址并添加Git用户。通过配置构建触发器,选择GitLab作为代码源。构建过程中,可以通过SSH传输代码包,或者将项目打包后上传到服务器。

总结

从零开始搭建开发环境的过程虽然充满挑战,但通过Docker和laradock的帮助,我们成功建立了一套完整的测试环境。GitLab和Jenkins的集成使得代码管理和自动化部署变得更加高效。希望这个过程能为其他团队提供一些参考。

转载地址:http://tnkq.baihongyu.com/

你可能感兴趣的文章
Python 快速下载依赖
查看>>
python实现非参数统计的Cochran检验 (附完整源码)
查看>>
python 怎么验证是否安装成功 scrapy
查看>>
Python 手写数字识别-1
查看>>
Python实现接口自动化测试库(JSON与Requests)详解
查看>>
Python 手写数字识别-3-sklearn中的几种算法
查看>>
python实现SSIM和MSSSIM计算 (附完整源码)
查看>>
Python 打开文件注意事项
查看>>
python 批量修改文件名_python windows下批量修改文件名
查看>>
Python 抓取网页乱码问题 以及EXCEL乱码
查看>>
python 抓取网页内容
查看>>
python 按照当前日期创建文件
查看>>
Python 接口并发测试详解
查看>>
Python 接口自动化 —— requests框架
查看>>
python 接口自动化数据结构(如列表、字典、元组)
查看>>
Python 接口自动化测试中的深拷贝与浅拷贝~
查看>>
Python 接口自动化测试中的高阶函数
查看>>
python 控制 cmd 命令行颜色
查看>>
Python 操作 Azure Blob Storage
查看>>
Python 操作 Excel 全攻略 | 包括读取、写入、表格操作、图像输出和字体设置
查看>>