【技术应用】使用华为云流水线制作Django镜像
创建代码仓库
登录华为云代码托管,创建一个空仓库django-test。
# 创建了一个空代码仓库之后,在你本地进入一个空目录,如myproject,并执行如下命令,git链接请替换成自己的
git clone git@code.aliyun.com:272904483/kube-apiserver.git
在myproject目录下将自动创建django-test子目录。
创建镜像仓库
登录华为云镜像服务。
1、创建流水线
首先,进入到SWR服务首页:https://www.huaweicloud.cn/product/swr.html,点击“镜像快速交付”按钮。
2、创建镜像/部署
点击“创建流水线”按钮,选择“镜像构建并部署” 标签页下的 “基于源码直接构建镜像” 类型的流水线,然后输入流水线名称,点击确认。
填写好流水线名称后,点击确定。
进入到该环节后,选中“代码来源”中的DevCloud,然后选择在前置步骤中所创建的django-test的代码仓库和分支,下面信息配置好后点击“下一步”。
指定Dockerfile:进入镜像构建环节后,在DockerFile处选择 “自定义 – dockerfile路径”,系统会自动使用源代码根目录下的Dockerfile文件进行构建。
此时你需要在你本地电脑上,在第一步创建的git仓库中,新建Dockerfile文件并git commit到源代码根目录下内容如下:
FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/
点击“下一步”后,选择镜像归档地址:此处我们学习使用全局变量进行镜像仓库和TAG的定义,
首先,选择组织,一般系统默认会有一个与租户名相同的组织,您也可以点击下拉框中的“创建组织”来新建。
接下来,新增全局变量,变量名为 repo,默认值为 tank。
然后,在归档地址的“镜像仓库”位置填入 ${repo},TAG位置填入 ${version},以便流水线启动时,通过不同的变量来确保每次构建的镜像版本不同。
完成以上步骤后,点击“下一步”。
— 选择待部署的集群和命名空间,如果没有集群,则点击“创建集群”,会跳转到CCE服务页面,用户可以手动创建集群 。
— 新建工作负载:选择完集群后,如果集群中没有创建过工作负载,或想使用新的工作负载进行部署,则点击新建链接,页面会要求输入新的工作负载名称。
— 新建工作负载后,系统会自动生成负载所对应的的kubenetes yaml文件,若您对kubernetes yaml文件非常熟悉,可以自行修改文件中的参数;若您不了解kubernetes yaml文件,建议您不作任何修改。
— 新增服务访问通道:如果镜像部署好后要对外提供服务,需要添加访问参数,包括访问该服务所使用的域名(自定义,tank)、访问方式(vpc内网访问)、协议(TCP)、容器内端口(80)、访问端口(自定义,30808)
3、启动流水线
启动流水线有两种方式,一种是通过界面的“启动流水线”按钮,一种是通过访问流水线启动接口,可以任选一种进行,推荐通过页面的按钮启动。
— 通过界面按钮启动流水线:如果有用户自定义的全局变量,需要在启动时输入本次执行流水线所使用的变量值,如版本号、镜像名称等等,我们这里可以直接使用默认值
— 通过curl命令启动流水线:若您需要将启动过程集成到shell脚本中,则只需要点击界面上的“使用指导”链接,界面将生成curl命令。将命令行中 –d 后面的“verion=数值”,替换成所需要传入的变量名称和相应的值即可。如 … -X POST – d “version=v1.0 &repo=tank ” -H ...
- 点赞
- 收藏
- 关注作者
评论(0)