标签:K8S 部署 192.168 -- 5000 registry 镜像 docker k8s
目录
一、安装docker
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
yum -y install docker-ce-18.06.1.ce-3.el7
systemctl enable docker && systemctl start docker
docker --version
二、搭建本地私有镜像仓库
创建宿主机存储目录,即放容器镜像的路径
mkdir -p /opt/data/registry
下载并启动一个registry容器,-v指定镜像文件本地存放路径
docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry --name private_registry registry
配置http权限支持
vim /etc/docker/daemon.json
{
"insecure-registries":["192.168.159.201:5000"]
}
重启docker服务,重启registry服务
systemctl restart docker
docker restart private_registry
上传镜像测试
docker tag centos:7 192.168.159.201:5000/centos7
docker push 192.168.159.201:5000/centos7
docker pull 192.168.159.201:5000/centos7
curl http://192.168.159.201:5000/v2/_catalog
若出现报错http: server gave HTTP response to HTTPS client
vi /usr/lib/systemd/system/docker.service 在ExecStart=/usr/bin/dockerd后添加–insecure-registry 192.168.92.134:5000
重启docker服务
systemctl daemon-reload
systemctl restart docker
docker restart $(docker ps -aq)
三、制作docker镜像
编辑Dockerfile
基本格式
FROM 项目镜像地址
LABLE 标签
RUN 执行操作
ADD 添加文件
制作镜像
docker build -t 192.168.159.201:5000/tomcat-demo -f Dockerfile .
.代表执行相对路径
上传镜像至本地仓库
docker push 192.168.159.201:5000/tomcat-demo
部署到K8S集群
--生成部署yaml文件
kubectl create deployment tomcat-demo --image=192.168.159.201:5000/tomcat-demo --dry-run -o yaml
--启动pods
kubectl apply -f tomcat-demo.yaml
--查看pods状态
kubectl get pods
--暴露服务
kubectl expose deployment tomcat-demo --port=80 --target-port=8080 --type=NodePort -o yaml --dry-run > svc.yaml
kubectl apply -f svc.yaml
kubectl get pod,svc
如何在无网络环境下导入镜像
一、在有镜像的docker环境中将镜像导出成归档文件
命令:docker save 镜像名>xxx.tar
举例:docker save ubuntu>ubuntu.tar
二、将镜像归档文件拷贝到网络不通的主机
根据归档文件输出的路径就可以找到归档文件,上面例子中就是输出到当前目录,通过输入pwd命令即可查询当前目录的路径。
三、将镜像归档文件导入到docker环境
命令: docker load<xxx.tar
举例:docker load<ubuntu.tar
四、验证镜像是否成功导入到docker环境中
命令:docker images
标签:K8S,部署,192.168,--,5000,registry,镜像,docker,k8s 来源: https://blog.csdn.net/duanhongyuan1995/article/details/118024239
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。