部署k8s客户端,及docker私仓部署

1.部署一个docker私仓

mkdir /opt/docker/registry
#配置仓库密码
mkdir /opt/docker/auth
cd /opt/docker/auth
htpasswd -Bbn admin admin > htpasswd

#运行docker私仓服务,下面端口5000:5000  前面的5000对应本机端口可以自定义
docker run -itd  \
-v /opt/docker/registry:/var/lib/registry \
-v /opt/docker/auth:/auth \
-p 5000:5000 \
--restart=always \
--name registry \
registry:latest


#配置私仓http访问
mkdir -p /etc/docker
echo '{ "insecure-registries" : ["xxx.xxx.xx.xx:5000"] }' | sudo tee /etc/docker/daemon.json
systemctl restart docker

2.在所有k8s work节点服务器上,都执行以下操作

vim /etc/containerd/config.toml

将下面127.0.0.1换成上一步docker私仓地址,目的可以通过http方式拉取镜像

python 复制代码
vim /etc/containerd/config.toml
# 搜索  plugins."io.containerd.grpc.v1.cri".registry.mirrors  找到对应位置,添加如下内容,

      [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
        # 如下这些仓库可以作为公共仓库使用
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
            endpoint = ["https://docker.mirrors.ustc.edu.cn","http://hub-mirror.c.163.com","http://127.0.0.1:5000"]
        # 内部私有仓库配置
		[plugins."io.containerd.grpc.v1.cri".registry.mirrors."127.0.0.1:5000"]
            endpoint = ["http://127.0.0.1:5000"]
			
      [plugins."io.containerd.grpc.v1.cri".registry.configs]
        # 内部私有仓库认证信息
        [plugins."io.containerd.grpc.v1.cri".registry.configs."127.0.0.1:5000"]
          [plugins."io.containerd.grpc.v1.cri".registry.configs."127.0.0.1:5000".tls]
            insecure_skip_verify = true # 是否跳过证书认证 

修改结束后,执行 systemctl restart containerd 刷新配置

python 复制代码
 systemctl restart containerd 

3.部署k8s客户端

ip均需要替换成服务器ip

python 复制代码
mkdir /opt/docker/k8s-data

#运行k8s客户端,注意下面ip需要换成本机服务器ip,前面的80端口可以自定义
docker run -d \
  --restart=unless-stopped \
  --name=kuboard \
  -p 80:80/tcp \
  -p 10081:10081/tcp \
  -e KUBOARD_ENDPOINT="http://127.0.0.1:80" \
  -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
  -v /opt/docker/k8s-data:/data \
  eipwork/kuboard:v3
  • 页面访问http://127.0.0.1:80即可进入客户端管理页面

  • 默认密码 admin/Kuboard123

4.本地服务镜像安装

构建后需要push,不然私仓其实是找不到该镜像的

python 复制代码
docker build -t 127.0.0.1:5000/gateway:1.0 --build-arg JAR_NAME=gateway.jar .

# 构建完后执行push
docker push 127.0.0.1:5000/gateway:1.0


# 如果存在很多tag为none的镜像可以执行下面命令删除这些镜像
docker image prune

5.通过k8s客户端配置服务

参照第3部,登录Kuboard页面

6.导入k8s集群

参照以下步骤,

  • 添加集群

  • 选右侧的Kuboard Agent添加

  • 输入名称和描述

  • 确定

  • 确定后显示如下页面

  • 检查命令框内容,地址是否为k8s客户端的ip和端口

  • 先到k8s主节点执行查看命令 kubectl get nodes,检查运行状态如下

  • 粘贴命令框内容到k8s主节点机器里执行, 一定要到k8s主节点去执行,不是k8s客户端机器

  • 执行结束后,点击页面的 我已经执行了导入命令按钮

  • 等待大概1分钟,页面自动会变成如下样子

7.创建一个名称空间

如下图,依次点击,进入创建名称空间选择页面,

若是页面无法看到右侧的名称列表,在master节点服务器 参考如下地址操作

[解决k8s访问报anonymous cannot get path的问题_message": "forbidden: user \"system:anonymous\" ca-CSDN博客](https://blog.csdn.net/baidu_38432732/article/details/106469037 "解决k8s访问报anonymous cannot get path的问题_message": "forbidden: user \"system:anonymous\" ca-CSDN博客")创建名称为demo,确定,应用

8.选择一个名称空间

如下点击下拉箭头,选中上面创建的pdn名称,默认创建完自动选中

9部署一个服务

如下操作,也可以自定义一些副本数量之类的,名称不能有中文等特殊字符

再点击容器信息,点击添加工作容器,点击右侧创建按钮

弹框配置docker私仓地址,最后点击保存,应用,确定

填写容器信息,容器镜像可通过docker images去查看,最后点上面得保存

相关推荐
海岛日记15 分钟前
centos一键卸载docker脚本
linux·docker·centos
小袁搬码2 小时前
Windows中指定路径安装DockerDesktop
windows·docker·容器·docker desktop
qq_312920112 小时前
docker 部署 kvm 图形化管理工具 WebVirtMgr
运维·docker·容器
踏雪Vernon2 小时前
[OpenHarmony5.0][Docker][环境]OpenHarmony5.0 Docker编译环境镜像下载以及使用方式
linux·docker·容器·harmonyos
条纹布鲁斯3 小时前
dockerdsktop修改安装路径/k8s部署wordpress和ubuntu
docker·kubernetes
工业3D_大熊5 小时前
3D可视化引擎HOOPS Luminate场景图详解:形状的创建、销毁与管理
java·c++·3d·docker·c#·制造·数据可视化
szc17675 小时前
docker 相关命令
java·docker·jenkins
CP-DD5 小时前
Docker 容器化开发 应用
运维·docker·容器
Stark-C5 小时前
万物皆可Docker,在NAS上一键部署最新苹果MacOS 15系统
macos·docker·策略模式
微信-since811926 小时前
[ruby on rails] 安装docker
后端·docker·ruby on rails