返回列表 发布新帖

我的gitlab CICD 入门

165 2
发表于 2024-4-24 18:50:34 | 显示全部楼层 阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
本帖最后由 fanrui 于 2024-4-24 19:07 编辑

CICD 虽然有一点点复杂,但假如你看我这篇文章,你会发现一个最简单的CICD demo 其实超级简单。

最简单的CICD入门分以下几个步骤:
一. 创建django项目
1. 安装python3、虚拟环境、 django:
    pyhton3安装: 略(请自行想办法)
    命令行依次执行以下几条命令:


    python3 -m venv venv_name
    source venv_name/bin/activate
    cd  venv_name



    备注: venv_name 是虚拟环境的根目录
    pip install Django==4.2

2. 创建django项目并在项目下创建一个应用:    命令行执行:    django-admin startproject project_name    python3 manage.py startapp app_name    备注:我有时候用python3,有时候用python,大家根据自己情况而定

3. 在服务器中提前用docker 创建一个数据库:    docker run --name django_gitlab_mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0



4.  app_name 文件夹下的     views文件中编写一个helloworld函数:
  1.      def hello(request):
  2.            return HttpResponse("hello qianfeng")
复制代码
    url 添加对应的映射:
  1. from django.urls import path, re_path
  2. from <span style="font-family: &quot;Open Sans&quot;, &quot;Clear Sans&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, &quot;Segoe UI Emoji&quot;, sans-serif; font-size: 16px; white-space-collapse: preserve; background-color: rgb(255, 255, 255);">app_name</span>.viewsimport *

  3. urlpatterns = [
  4.    path('addshop/', hello)
复制代码
5. 在 project_name/project_name/settings.py 中注册app
  1. INSTALLED_APPS = [
  2. ]
  3. 这里面添加一行:
  4. app_name
  5. 就是第二步创建的app
复制代码
6. 下载gitlab & gitlab-runner 并安装
  1. wget https://packages.gitlab.cn/repository/ubuntu-bionic/pool/g/gitlab-jh/gitlab-jh_16.9.1-jh.0_amd64.deb
复制代码
7. 注册runner

  1. # 注册runner就相当于雇佣一个人帮你去敲构建、部署之类的命令
  2. # 注册,新老版本注册的方式变化了一点,所以有点头疼
  3. 1. 输入网址:http://你的ip/admin      ,没有登录,就登录一下
  4. 2. 页面左边 CICD -- > runner  点击一下,
  5. 3. 点击新建实例runner
  6. 4.  label 选项下 有个 run.... 的单选框,勾选上
  7. 5. 点击创建runner
  8. 6. 复制命令到服务器命令行 进行执行
  9.    根据提示先输 ip,回车,再输入token,回车,再点回车...,知道看到有一行字 显示有 docker、shell之类的。
  10. 7. 输入docker,再点击回车
  11. 8. 一般都会显示注册完成,
  12.     命令行在此输入:gitlab-runner run

复制代码



12. 不出意外的话, 我们把     - echo "hello2" 该成     - echo "hello3", gitlab-runner 就会自动帮我把项目打包成docker镜像。    当然,项目中有任何变化提交到gitlab,gitlab-runner 也会自动打包镜像,后续自动部署还需要各位再努力一下了。



总结: 我使用gitlab 已经好几年了,之前一直只使用仓库功能,主要是因为我的基础薄弱,学习能力差到离谱。
          入行十几年,实在是干啥都是半桶水,做啥都是半成品,终于下定决心将平时用到的东西一个一个认真学一下。
          中间遇到的困难: gitlab与docker、nexus、harbor的交互问题,每次问问题在群里被各种大佬的嘲笑、讽刺、批评。
          我的解决方法是: 交互不懂,我就重新把其他部分的知识再学习一遍。
                                     被嘲笑、讽刺、批评,我就选择性失明,一个问题反复问,同时也尽量礼貌性的把问问题的技巧提升一下。
                                     我已经给好多个技术群的群主 发了红包,购买了群主的vip,
                                     然后,基本上被各大群主拉黑了,
                                     但最终gitlab 入门了。
          其实很多东西很简单,聪明人花时间,笨人花钱。
回复

使用道具 举报

评论2

小马哥Lv.8 发表于 2024-4-24 21:51:50 | 显示全部楼层
只要肯学习,就是好样的,赞
开心交流,交流开心。
回复

使用道具 举报

Kelvin HeLv.2 发表于 2024-4-24 22:31:40 | 显示全部楼层
期待继续分享你的学习笔记
回复

使用道具 举报

意见建议

Email:forum@gitlab.cn
  • 关注公众号
  • 添加专业顾问
Copyright © 2001-2024 极狐GitLab论坛 版权所有 All Rights Reserved. 鄂ICP备2021008419号-1|鄂公网安备42018502006137号
关灯 快速发帖
扫一扫添加专业顾问
返回顶部
快速回复 返回顶部 返回列表