返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >DevOps流水线搭建-PHP版本
  • 592
分享到

DevOps流水线搭建-PHP版本

devops运维数据库Poweredby金山文档 2023-08-31 18:08:56 592人浏览 泡泡鱼
摘要

一、介绍 流水线发布代码 1、官网 https://www.jenkins.io/zh 2、kubesphere里的介绍 https://kubesphere.io/zh/docs/

一、介绍

流水线发布代码

1、官网

https://www.jenkins.io/zh

2、kubesphere里的介绍

https://kubesphere.io/zh/docs/v3.3/devops-user-guide/how-to-use/pipelines/choose-jenkins-agent/

3、git仓库

可以自己写点测试代码,提交,待会测试用

https://gitee.com/

4、创建devops项目

5、创建流水线

二、PHP发布步骤

1、第一步:拉代码

配置自己的仓库登录密码

拉代码运行成功,当然自己得提前去代码仓库设置好自己的测试仓库。

2、第二步:制作镜像

思路:首先制作一个php+Nginx的镜像,然后利用Dockerfile把拉到的代码打进去,制作一个新镜像。

正好我之前做过一个,可以利用一下。

php+nginx的镜像制作过程: https://blog.csdn.net/u014225032/article/details/125165684

有了这个镜像之后,需要你把他推送到阿里云,待会编写项目的dockerfile要用到,因为这里要和阿里云打交道,所以少不了账号密码。

阿里云账号注册 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

自己注册一下,创建个实例,开个仓库就完事了。

 echo "阿里云登录密码" | docker login --username=登录名 reGIStry.cn-hangzhou.aliyuncs.com --passWord-stdin

这个地方本来应该设置成变量名配置的,我这里方便大家看,就直接写了,上正式环境的时候大家可以写道配置字典里。

FROM registry.cn-hangzhou.aliyuncs.com/mystudygyd/studyRedis:nginx-phpv1MaiNTAINER itddENV MYPATH /usr/local/nginx/htmlWORKDIR $MYPATHADD * /usr/local/nginx/html/CMD echo $MYPATHEXPOSE 80 443ENTRYPOINT ["/tmp/php/startServer.sh"]
docker build -t ubuntu-nginx-php:latest .

这里没什么好说的,创建镜像。这样第二步就完事了。

3、第三部:push 镜像

把镜像推送到阿里云仓库

 docker tag ubuntu-nginx-php:latest $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER

打tag,为什么这样写是阿里云的语法,里面的变量是在编辑jenkinsfile配置里

docker push $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER

推送镜像也是阿里云的语法,$BUILD_NUMBER变量是发布一次+1的一个变量,大家在生产环境中可以改成分支+时间,这样可以方便查看当前的版本。

4、第四步:部署到dev

首先配置一下k8s集群的配置。因为是所有节点都要部署,而node节点没有部署能力,所以需要加权限。

创建凭证的时候选择kubeconfig内容会自动生成,然后名字写一个,我写的是demo-kubeconfig,变量名 KUBECONFIG_CREDENTIAL_ID

echo "$KUBECONFIG_CREDENTIAL_ID" > ~/.kube/config && cat ~/.kube/config && chown 777 -R ~/.kube/config && kubectl get nodes

把配置写到.kube/config文件里,后面是权限的校验。

kubectl get nodes && envsubst < deploy/deploy.yaml | kubectl apply -f -

创建pod,有基础的应该能看懂。

apiVersion: apps/v1kind: Deploymentmetadata:  labels:    app: sannong  name: sannong  namespace: sannong   #一定要写名称空间spec:  progressDeadlineSeconds: 600  replicas: 1  selector:    matchLabels:      app: sannong  strategy:    rollingUpdate:      maxSurge: 50%      maxUnavailable: 50%    type: RollingUpdate  template:    metadata:      labels:        app: sannong    spec:      imagePullSecrets:        - name: alilogin  #提前在项目下配置访问阿里云的账号密码      containers:        - image: $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER          readinessProbe:            HttpGet:              # 健康检查url,如果健康检查不通,k8s就认为你的服务挂了,不会给你分配流量过来              path: /                port: 80            timeoutSeconds: 10            failureThreshold: 30            periodSeconds: 5          imagePullPolicy: Always          name: app          ports:            - containerPort: 80              protocol: tcp          resources:            limits:              cpu: 300m              memory: 600Mi          terminationMessagePath: /dev/termination-log          terminationMessagePolicy: File      dnsPolicy: ClusterFirst      restartPolicy: Always      terminationGracePeriodSeconds: 30---apiVersion: v1kind: Servicemetadata:  labels:    app: sannong  name: sannong  namespace: sannongspec:  ports:    - name: http-80      port: 80      protocol: TCP      targetPort: 80  selector:    app: sannong  sessionAffinity: None  type: NodePort

5、运行流水线

成功。如果你在运行流水线,发现一直不动,你可以尝试再创建一个账户专门发布流水线试试。在去项目里看看pod是否启动成功。

看是成功了,再去service暴露下外部端口

浏览器访问

完美!虽然写的比较潦草,但是尽力了。哈哈,祝愿每一位php从业者都可以实现全流程搭建。欢迎评论点赞交流。

来源地址:https://blog.csdn.net/u014225032/article/details/129600539

--结束END--

本文标题: DevOps流水线搭建-PHP版本

本文链接: https://lsjlt.com/news/386641.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • DevOps流水线搭建-PHP版本
    一、介绍 流水线发布代码 1、官网 https://www.jenkins.io/zh 2、kubesphere里的介绍 https://kubesphere.io/zh/docs/...
    99+
    2023-08-31
    devops 运维 数据库 Powered by 金山文档
  • Docker版PHP多版本环境搭建
    目录 1. 前言 2. 目标 3. 实现原理图 4. 环境准备 5. 实战演练 (1)创建挂载目录 (2)默认配置文件 (3)网络配置 (4)启动容器 (4)Nginx配置 (5)重启容器,进行验证即可 6. 扩展相关 (1)修改源 (2)...
    99+
    2023-09-14
    Nginx PHP 容器 docker
  • 搭建Zabbix6.0版本
    Zabbix简介 Zabbix是一个企业级的开源分布式监控解决方案,由C语言编写而成的底层架构(server端和agent端),由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。 Zabbix运...
    99+
    2023-09-03
    php linux 服务器 Powered by 金山文档
  • ECshop4.1版本搭建
    ECshop电商平台的搭建 Hello小伙伴们,你们好,又是日常get新技能的一天,0基础入门,趁着热乎,快上车啦 ~~ 今天,咱们就来实践一下如何使用PHP+Apache+MySQL项目部署到Lin...
    99+
    2023-09-14
    apache linux php mysql
  • CentOS7怎么搭建两个PHP版本
    这篇文章主要介绍“CentOS7怎么搭建两个PHP版本”,在日常操作中,相信很多人在CentOS7怎么搭建两个PHP版本问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CentOS7怎么搭建两个PHP版本”的疑...
    99+
    2023-07-05
  • CentOS 7搭建两个PHP版本的方法详解
    在开发中,有时会遇到需要使用不同的PHP版本的情况,如何在一个CentOS 7系统上搭建两个PHP版本呢?下面我们将详细介绍搭建方法。一、准备在开始搭建之前,先准备以下工具和环境:1、CentOS 7服务器和root权限2、两个不同版本的P...
    99+
    2023-05-14
    Centos7 php
  • win10怎么搭建本地php环境搭建
    在WEB开发中,PHP也许是最常用的服务器端脚本语言之一。为了更加方便的开发与测试,希望在本地电脑上搭建PHP环境,那么如何实现呢?下面是具体的步骤说明。步骤一:安装Web服务器搭建PHP环境的关键是安装Web服务器,Windows系统下可...
    99+
    2023-05-14
  • Apache + PHP +MySQL 环境搭建(Windows版)
    文章目录 Apache24下载Apache24环境变量配置Apache PHP下载PHP配置PHP MySQL下载MySQL配置MySQL 测试 Apache24 下载Apac...
    99+
    2023-08-31
    php apache mysql
  • openldap的搭建(版本在2.4以下)
            目录服务就是按照树状存储信息的模式。LDAP是轻量目录访问协议(LightweightDirectory Access ...
    99+
    2024-04-02
  • 升级python版本和搭建环境
    ModuleNotFoundError: No module named '_contextvars' 由于上面这个错误我需要把我的Python版本从python3.7.2升级到3.7.3。官网下载最新的python安装文件之后,双击选择...
    99+
    2023-01-31
    版本 环境 python
  • Windows环境下怎么搭建Nginx和多版本PHP共存
    这篇“Windows环境下怎么搭建Nginx和多版本PHP共存”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Windows环...
    99+
    2023-06-26
  • 基于Jenkins如何打造符合DevOps能力成熟度三级标准的持续集成流水线
    基于Jenkins如何打造符合DevOps能力成熟度三级标准的持续集成流水线,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。DevOps的核心是自动化,自动化的核心是标准化。而D...
    99+
    2023-06-04
  • Ubuntu搭建原神3.7版本服务器
    本文涉及知识点 linux基础命令|mongoDB服务端搭建及指令|Java环境搭建 原神私服可以用来抽卡满足自己用,他的许多任务都得登录控制台自己发,不建议拿私服玩,想要体验完美原神请到官服,本文只做LINUX MongoDB java教...
    99+
    2023-08-18
    服务器 ubuntu mongodb 运维
  • centos7如何搭建jira服务版本6.3.6
    这篇文章给大家分享的是有关centos7如何搭建jira服务版本6.3.6的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。最近因项目需要,需要构建一个软件工程的管理平台,优先选择jira.关于网络上面的jira搭建...
    99+
    2023-06-10
  • 如何使用Docker快速搭建多版本PHP开发环境
    本篇内容主要讲解“如何使用Docker快速搭建多版本PHP开发环境”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用Docker快速搭建多版本PHP开发环境”吧!目标支持 PHP 5.6.x...
    99+
    2023-07-04
  • 阿里云服务器如何搭建最新版本php环境
    阿里云服务器搭建最新版本的php环境,需要使用php编程语言,如PHP(PHP是一种编程语言)或Java(JAVA是一种编程语言)语言,下面是详细步骤: 安装PHP: 在阿里云服务器上,您可以安装PHP编程语言,包括以下版本:http...
    99+
    2023-10-26
    阿里 最新版本 环境
  • docker本地PHP开发环境搭建
    一、搭建本地PHP开发环境 概述 本文简单介绍通过启动一个nginx和fpm容器来搭建一个php web运行环境,以文档命令为例,H:/home/code/docker/web 目录下可以放多个子项目,只需针对不同的项目配置不同的nginx...
    99+
    2023-09-02
    php docker nginx linux安装PHP运行环境
  • 实例介绍:使用Docker快速搭建多版本PHP开发环境
    本篇文章给大家带来了关于PHP的相关知识,其中主要介绍了关于怎么使用docker快速搭建多版本PHP开发环境的相关内容,下面一起来看一下希望对大家有帮助。文章中使用的软件:Mac:11.4(macOS Big Sur) ,处理器为:Inte...
    99+
    2023-05-14
    php
  • 阿里云服务器如何搭建最新版本php环境模式
    阿里云服务器搭建最新版本php环境模式可以使用以下步骤: 下载并安装zend server软件。可以从阿里云官网获取最新版本zend server软件,如下所示: zend -n zend_server zend_server_re...
    99+
    2023-10-26
    阿里 最新版本 模式
  • 创建一个成熟的GitOps流水线需要准备哪些工作
    这篇文章主要讲解了“创建一个成熟的GitOps流水线需要准备哪些工作”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“创建一个成熟的GitOps流水线需要准备哪...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作