harbor安装实操笔记
纸上得来终觉浅,实操一遍吧!
把所有开发的后端服务先在打成镜像,传到私有镜像仓库;
然后在任意的远程机器拉取镜像,然后可采用docker或者docker-compose的方式运行,本节先按照docker的方式运行;
后面补充docker-compose和k8s的方式运行镜像;
问题 | 回答 |
---|---|
where are we?现状 | 简单的听说过harbor并未实操,不知道里面的坑 |
where are we go? 目标 | 实际使用harbor,把完整的产品镜像(前后端中间件)上传到镜像仓库,得到软件制品; |
how can we go there?路径 | 先安装harbor 然后推送程序镜像到harbor 最后在任意机器上拉取镜像运行; |
安装docker和docker-compose
当前的docker版本不够高,需要升级;
先删除docker;
rpm -qa | grep docker
//删除查询到的所有跟docker相关的东西;
yum reomove xxx
安装指定版本:
yum install docker-ce-18.06.3.ce-3.el7 -y
# 启动docker
systemctl start docker
# 设置为开启启动
systemctl enable docker
安装docker-compose
```shell
yum install docker-compose
```
解压安装包之后得到的文件目录如下:
复制配置文件模板,并修改host和端口;
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
# 配置host和端口;
# 注释掉htts端口的配置;
执行安装:
sh install.sh
安装完毕之后成功截图:
登录Harbor管理后台
入口:[http://47.115.100.100:8000/](http://47.115.100.100:8000/)
账号:admin
密码:Harbor12345
推送镜像到harbor
制作镜像的Dockerfile
FROM java:8
MAINTAINER lifuchun <lifc@authine.com>
VOLUME /tmp
ADD config config
ADD app-file.jar app.jar
ADD skywalking-agent.jar skywalking-agent.jar
ADD application.properties application.properties
EXPOSE 8881
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Dspring.cloud.nacos.discovery.server-addr=47.113.126.86:8848","-Dspring.cloud.nacos.discovery.namespace=test","-javaagent:/skywalking-agent.jar","-Dskywalking.agent.service_name=app-file","-Dcollector.backend_service=47.115.100.100:11800","-Dspring.application.name=app-file","-jar","/app.jar"]
制作镜像指令:
echo '构建app-file镜像并启动'
docker build -t app-file .
echo '运行app-file'
docker run --name app-file -v /data/var/log:/data/var/log -m 1024M -d -p 8881:8080 app-file
得到镜像之后,需要推送镜像到harbor仓库;
如果推送到harbor仓库提示https错误;
docker push 47.115.100.100:8000/cloudpivot/app-file:latest
The push refers to repository [47.115.100.100:8000/cloudpivot/app-file]
Get https://47.115.100.100:8000/v2/: http: server gave HTTP response to HTTPS client
需要设置本地的docker接受不安全的注册中心:
然后重启docker;
登录仓库:
docker login 47.115.100.100:8000
# 输入账号,密码
本地镜像打tag:
docker tag app-file 47.115.100.100:8000/cloudpivot/app-file:latest
推送镜像:
docker push 47.115.100.100:8000/cloudpivot/app-file:latest
推送进度:
界面观察镜像:
从harbor拉取镜像运行
需要编辑docker的配置文件:
vim /etc/docker/daemon.json
# 插入配置信息
配置信息如下:
{"insecure-registries":["ip:port"]}
然后重启docker:
systemctl restart docker
拉取镜像:
```shell
docker pull 47.115.100.100:8000/cloudpivot/app-file:latest
```
进度如下:
运行镜像:
docker run --name app-file -v /data/var/log:/data/var/log -m 1024M -d -p 8881:8080 app-file
然后查看日志:
docker logs -f app-file
或者直接在挂载的日志目录中查看日志:
tail -f /data/var/log/app-file.log
小结
一句话概括本文做的事情: 先安装docker和docker-compose,然后安装完harbor,找了一个后端服务本地上传镜像,远程服务器直接使用镜像使用docker的方式运行起来了。
原创不易,关注诚可贵,转发价更高!转载请注明出处,让我们互通有无,共同进步,欢迎沟通交流。
harbor安装实操笔记的更多相关文章
- 【实操笔记】MySQL主从同步功能实现
写在前边: 这两天来了个需求,配置部署两台服务器的MySQL数据同步,折腾了两天查了很多相关资料,一直连不上,后来发现其实是数据库授权的ip有问题,我们用的服务器是机房中的虚拟机加上反向代理出来的,坑 ...
- Hadoop1.2.1 全然分布式集群搭建实操笔记
前期准备工作: 1.改动Linux主机名:/etc/hostname ubuntu系统:vi /etc/hostname ...
- n-map安装实操
强烈建议大家从官网下载nmap,而不是其他的第三方.官网地址:https://nmap.org/download.html 打开是这样的,感觉有点阴森森的色调.BTW,谁能逃得过真香定律呢. wind ...
- lightweight openpose 入门实操笔记(pytorch环境)
最近有个小项目要搞姿态识别,简单调研了一下2D的识别: 基本上是下面几种 (单人)single person 直接关键点回归 heatmap,感觉其实就是把一个点的标签弄成一个高斯分布 (多人)mul ...
- mysql数据库实操笔记20170418
一.建立商品分类表和价格表: 1.分类表`sankeq``sankeq`CREATE TABLE cs_mysql11(id INT(11) NOT NULL AUTO_INCREMENT,categ ...
- mysql数据库实操笔记20170419
一.insert与replace区别: insert:当表里有字段设置了主键或者唯一时,插入重复的唯一或主键字段值是不能执行的: replase:当表里有字段设置了主键或者唯一时,插入重复的唯一或主键 ...
- 实操笔记:为 NSQ 配置监控服务的心路历程
在 Go 语言实现的实时消息队列中, NSQ 的热度可以排第一. NSQ 这款消息中间件简单易用,其设计目标是为在分布式环境下运行,为去中心化服务提供一个强大的基础架构.它具有分布式.去中心化的拓扑结 ...
- 生产环境搭建高可用Harbor(包括恢复演练实操)
生产环境搭建高可用Harbor(包括恢复演练实操) 前言 因资源成本问题,本Harbor高可用架构为最小开销方案,如果资源充足,可以将PG.Redis全部使用使用云厂商集群模式. 同时为了配置简单,并 ...
- 大数据学习笔记——Linux完整部署篇(实操部分)
Linux环境搭建完整操作流程(包含mysql的安装步骤) 从现在开始,就正式进入到大数据学习的前置工作了,即Linux的学习以及安装,作为运行大数据框架的基础环境,Linux操作系统的重要性自然不言 ...
随机推荐
- oracle sql%notfound
SQL%NOTFOUND 是一个布尔值.与最近的sql语句(update,insert,delete,select)发生交互,当最近的一条sql语句没有涉及任何行的时候,则返回true.否则返回fal ...
- 【入门】ZooKeeper 相关概念总结
1. 前言 相信大家对 ZooKeeper 应该不算陌生.但是你真的了解 ZooKeeper 到底有啥用不?如果别人/面试官让你给他讲讲对于 ZooKeeper 的认识,你能回答到什么地步呢? 拿我自 ...
- 第8.26节 重写Python类中的__getattribute__方法实现实例属性访问捕获
一. 引言 在<第7.23节 Python使用property函数定义属性简化属性访问的代码实现>和<第7.26节 Python中的@property装饰器定义属性访问方法gette ...
- vue优点
低耦合.视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上,当View变化的时候Model可以不变,当Model变化的时候View ...
- 数组的翻转(非reverse)
var arr = [1, 5, 8, 9, 6, 3]; var arr2 = []; while (arr.length) { var temp = arr.pop(); arr2.push(te ...
- CSP-S2020 浙江 游记
2020.10.9 今天是 \(2020\) 年 \(10\) 月 \(9\) 日,距离初赛还有两天(算两天吗,完整的应该只有一天多了). 原本对于比赛还是没什么感觉的,每天做做题,水水文章,感觉时间 ...
- 苹果M1芯片各种不支持,但居然可以刷朋友圈!你会买单吗?
上个月和大家一起分享过,最新的苹果M1芯片上支持的各种开源软件.什么?还没读过?赶紧点这里:一文解读苹果 M1 芯片电脑上的开源软件. 现在已经过去了半个月,想必有不少的同学都已经入手了最新的苹果M1 ...
- Ionic学习记录
1.跨域问题 浏览器中的运行 当你运行 ionic serve 时发生了什么呢? 启动了一个本地 web 服务器 你的浏览器打开并定位到本地服务器地址 这让你看着你的应用加载到你电脑上一个浏览器里,地 ...
- Vagrant批量安装CentOS7
环境准备 下载virtualbox https://download.virtualbox.org/virtualbox/6.1.10/VirtualBox-6.1.10-138449-Win.exe ...
- 移动端 FileReader文件上传
一.file上传文件 <input type="file" multiple> multiple 设置多选 通过change事件监听是否上传文件 files 属性获 ...