harbor安装实操笔记

harbor安装实操笔记_第1张图片


纸上得来终觉浅,实操一遍吧!

把所有开发的后端服务先在打成镜像,传到私有镜像仓库;

然后在任意的远程机器拉取镜像,然后可采用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 ```


解压安装包之后得到的文件目录如下:

harbor安装实操笔记_第2张图片



复制配置文件模板,并修改host和端口;
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
# 配置host和端口;

# 注释掉htts端口的配置;

harbor安装实操笔记_第3张图片


执行安装:

sh install.sh


安装完毕之后成功截图:

harbor安装实操笔记_第4张图片


登录Harbor管理后台



入口:[http://47.115.100.100:8000/](http://47.115.100.100:8000/)


账号:admin


密码:Harbor12345


harbor安装实操笔记_第5张图片



推送镜像到harbor


制作镜像的Dockerfile

FROM java:8
MAINTAINER lifuchun 
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接受不安全的注册中心:

harbor安装实操笔记_第6张图片


然后重启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安装实操笔记_第7张图片



界面观察镜像:

harbor安装实操笔记_第8张图片



从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 ```


进度如下:

harbor安装实操笔记_第9张图片


运行镜像:

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

harbor安装实操笔记_第10张图片


小结


一句话概括本文做的事情: 先安装docker和docker-compose,然后安装完harbor,找了一个后端服务本地上传镜像,远程服务器直接使用镜像使用docker的方式运行起来了。

原创不易,关注诚可贵,转发价更高!转载请注明出处,让我们互通有无,共同进步,欢迎沟通交流。

你可能感兴趣的:(harbor安装实操笔记)