argocd安装

简介

argocd学习起来其实不难,详细的可以直接官方文档

https://argo-cd.readthedocs.io/en/stable/

操作

首先安装

创建ns

kubectl create namespace argocd

部署yaml文件

这里我建议下载到本地使用git托管

wget https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

kubectl apply -n argocd -f install.yaml

修改argocd-server这个service为lb,或者以你喜欢的形式去暴露服务

之后获取默认的登陆密码

kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d

用户名是admin

安装argocd cli

就一个二进制

https://github.com/argoproj/argo-cd/releases/tag/v2.1.7

下载完扔到PATH里面就好了

添加集群

argocd cluster add default --kubeconfig ~/.kube/k3s

之后创建app

这里我喜欢在web界面去创建,当然,使用cli也可以

cicd 思路

其实ci这里到推送完镜像就结束了,所以ci这部分就不说了,这里我使用的是drone ci下面是实例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# clone 代码
git clone https://git.bboysoul.cn/bboysoul/argocd-yaml.git
cd argocd-yaml/blog
# 更新镜像
kubectl set image -f deploy.yaml blog=registry.bboysoul.cn/rpi/blog:$tag --local --dry-run=client -o yaml >temp
mv temp deploy.yaml
# 推送代码
git add .
git commit -m "change image registry.bboysoul.cn/rpi/blog:$tag"
git push origin master
cd ../../
rm -rf argocd-yaml
# 登陆argocd
argocd login --insecure --username admin --password pass 10.10.100.76
# 手动同步应用
argocd app sync blog
# 等待应用同步完成
argocd app wait blog

最后说几句

之前我是直接使用脚本去set image去更新镜像的,使用了argocd之后很多事情都方便了很多,不用去判断集群,不用去判断环境,推荐使用

欢迎关注我的其它发布渠道