栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Harbor安装和基本使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Harbor安装和基本使用

Harbor

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。
如:
gitlab : git 私服
nexus : maven 私服
harbor: docker 私服

下载

下载链接:https://github.com/goharbor/harbor.
压缩包下载地址:https://github.com/goharbor/harbor/releases.

百度网盘链接:https://pan.baidu.com/s/1y3pQUfhVfLlsbeNssgmYfw.
提取码:hhg5

关闭防火墙和启动docker

systemctl stop firewalld
systemctl start docker

上传至linux并解压

tar -zxvf harbor-offline-installer-v1.8.0.tgz.tar

修改配置文件

cd harbor
vim harbor.yml 

# 修改为域名或你服务器 IP	
hostname: 192.168.**.**

执行安装脚本。注:执行之前要安装 docker-compose

./install.sh

验证是否安装成功

通过浏览器访问 http://192.168.**.** 																												
输入账号 admin,密码 Harbor12345,登录成功后可以创建项目

harbor 的启动和停止

# 启动										
docker-compose start										
# 停止										
docker-comose stop										
# 重启										
docker-compose restart										
设置集成服务器

设置私服(这里配置harbor服务器的ip)

在 /etc/docker/daemon.json 中增加如下内容(如果文件不存就新建该文件)
修改后记得重启docker

[root@base ~]# cd /etc/docker
[root@base docker]# ls
daemon.json  key.json
[root@base docker]# vim daemon.json
[root@base docker]# cat daemon.json 
{
    "registry-mirrors":["https://plxiqtpg.mirror.aliyuncs.com"],
    "insecure-registries":["192.168.182.131"]
}
[root@base docker]# systemctl restart docker
# 设置密码
[root@base docker]# vim harbor_pw
[root@base docker]# cat harbor_pw 
Harbor12345
登录harbor
[root@base docker]# cat /etc/docker/harbor_pw  | docker login 192.168.182.131 -u admin --password-stdin
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

查看本地的镜像

docker images

标记想推送的镜像(镜像名按如下要求)

docker tag  镜像id   harbor的ip/项目名/镜像名:tag
docker tag  5c9f0869c789   192.168.182.131/demo/image:1.0

推送镜像

docker push 镜像名:tag

拉去镜像

docker pull 镜像名:tag

具体操作流程

[root@base docker]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
image        1.0       5c9f0869c789   27 hours ago   332MB
openjdk      8-jre     26ac3f63d29f   3 days ago     273MB
mysql        5.7       c20987f18b13   4 days ago     448MB
mysql        latest    3218b38490ce   4 days ago     516MB
[root@base docker]# docker tag  5c9f0869c789   192.168.182.131/demo/image:1.0
[root@base docker]# docker images
REPOSITORY                   TAG       IMAGE ID       CREATED        SIZE
192.168.182.131/demo/image   1.0       5c9f0869c789   27 hours ago   332MB
image                        1.0       5c9f0869c789   27 hours ago   332MB
openjdk                      8-jre     26ac3f63d29f   3 days ago     273MB
mysql                        5.7       c20987f18b13   4 days ago     448MB
mysql                        latest    3218b38490ce   4 days ago     516MB
[root@base docker]# docker push 192.168.182.131/demo/image:1.0
The push refers to repository [192.168.182.131/demo/image]
79ba94021d45: Pushed 
2c95a0eeb72b: Pushed 
b4cfcb8385a8: Pushed 
2b730cf18c09: Pushed 
edeaba958753: Pushed 
8bf42db0de72: Pushed 
31892cc314cb: Pushed 
11936051f93b: Pushed 
1.0: digest: sha256:e18ed06a6d233dda2afce649f3ac809fe270108f8c045ad70422f84507ecafd9 size: 2000

在harbor上查看

拉去镜像

[root@base docker]# docker images
REPOSITORY                   TAG       IMAGE ID       CREATED        SIZE
192.168.182.131/demo/image   1.0       5c9f0869c789   27 hours ago   332MB
image                        1.0       5c9f0869c789   27 hours ago   332MB
openjdk                      8-jre     26ac3f63d29f   3 days ago     273MB
mysql                        5.7       c20987f18b13   4 days ago     448MB
mysql                        latest    3218b38490ce   4 days ago     516MB

[root@base docker]# docker rmi -f 192.168.182.131/demo/image:1.0 image:1.0

[root@base docker]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
openjdk      8-jre     26ac3f63d29f   3 days ago   273MB
mysql        5.7       c20987f18b13   4 days ago   448MB
mysql        latest    3218b38490ce   4 days ago   516MB

[root@base docker]# docker pull 192.168.182.131/demo/image:1.0
1.0: Pulling from demo/image
0e29546d541c: Already exists 
9b829c73b52b: Already exists 
cb5b7ae36172: Already exists 
99ce012bef04: Already exists 
22dc2a72d098: Already exists 
9c69a57e10d9: Already exists 
3fd945f3699a: Pull complete 
c59823f8d50a: Pull complete 
Digest: sha256:e18ed06a6d233dda2afce649f3ac809fe270108f8c045ad70422f84507ecafd9
Status: Downloaded newer image for 192.168.182.131/demo/image:1.0
192.168.182.131/demo/image:1.0
[root@base docker]# docker images
REPOSITORY                   TAG       IMAGE ID       CREATED        SIZE
192.168.182.131/demo/image   1.0       5c9f0869c789   27 hours ago   332MB
openjdk                      8-jre     26ac3f63d29f   3 days ago     273MB
mysql                        5.7       c20987f18b13   4 days ago     448MB
mysql                        latest    3218b38490ce   4 days ago     516MB
[root@base docker]# cd /usr/project/dockerfile/
[root@base dockerfile]# ls
data  docker-compose.yaml  Dockerfile  right.jar  share.jar  user.jar
[root@base dockerfile]# vim docker-compose.yaml 
[root@base dockerfile]# cat docker-compose.yaml 
version: '3.1'
services:
  mysql_linux:           # 服务的名称 
    restart: always   # 代表只要docker启动,那么这个容器就跟着一起启动
    image: mysql:5.7  # 指定镜像路径                      
    container_name: mysql_linux  # 指定容器名称
    ports:
      - 3308:3306   #  指定端口号的映射
    environment:
      MYSQL_ROOT_PASSWORD: root  # 指定MySQL的ROOT用户登录密码
      TZ: Asia/Shanghai        # 指定时区
    volumes:
     - ./data:/var/lib/mysql   # 映射数据卷
  springcloud_user:           # 服务的名称
    restart: always   # 代表只要docker启动,那么这个容器就跟着一起启动
    image: 192.168.182.131/demo/image:1.0  # 指定镜像路径
    container_name: springcloud_user  # 指定容器名称
    ports:
      - 7001:6001   #  指定端口号的映射
    environment:
      profiles: prod                                                                                     
      TZ: Asia/Shanghai        # 指定时区
[root@base dockerfile]# docker-compose  up -d
mysql_linux is up-to-date
Creating springcloud_user ... done
[root@base dockerfile]# docker ps
ConTAINER ID   IMAGE                            COMMAND                  CREATED          STATUS          PORTS                                                  NAMES
aac754ed9c71   192.168.182.131/demo/image:1.0   "java -jar user_imag…"   21 seconds ago   Up 20 seconds   0.0.0.0:7001->6001/tcp, :::7001->6001/tcp              springcloud_user
0458ea31025a   mysql:5.7                        "docker-entrypoint.s…"   27 hours ago     Up 16 minutes   33060/tcp, 0.0.0.0:3308->3306/tcp, :::3308->3306/tcp   mysql_linux

测试成功

整理一张流程图

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/678098.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号