828华为云征文|华为云Flexus X实例docker部署harbor镜像仓库

2024-09-04 18:12

本文主要是介绍828华为云征文|华为云Flexus X实例docker部署harbor镜像仓库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

828华为云征文|华为云Flexus X实例docker部署harbor镜像仓库

  • 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧!

什么是华为云Flexus X实例

  • 华为云Flexus X实例云服务是新一代开箱即用、体验跃级、面向中小企业和开发者打造的高品价比云服务产品。
  • Flexus云服务器X实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。

开始接触华为云Flexus云服务器X实例

  • 获取华为云Flexus云服务器X实例后第一步就是先去华为云上重置服务器密码

    在这里插入图片描述
    在这里插入图片描述

  • 重置完毕后用ssh工具登录华为云服务器,这里我用的是finalshell,也可以用其他工具登陆比如xshell或者Putty都可以
    在这里插入图片描述

  • 登录上去查看硬盘大小,可以看到是100g硬盘,硬盘总大小是正常的

root@flexusx-ebe8:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           1.2G  1.1M  1.2G   1% /run
/dev/vda1        99G  4.2G   90G   5% /
tmpfs           5.7G     0  5.7G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           1.2G  4.0K  1.2G   1% /run/user/0
  • 然后输入 ufw status可以看到默认防火墙是关闭的,因此我们就不需要额外再去配置端口开放相关的配置,只要在华为云安全组配置端口开放就可以了
root@flexusx-ebe8:~# ufw status
Status: inactive

docker环境的安装

  • 然后进行docker容器的安装,安装最新版本的docker
  • 这里因为docker现在已经无法直接通过网络安装,所以我们通过离线安装的方式安装docker环境
  • 从官网下载离线包
https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/

在这里插入图片描述

  • 如图所示,把离线包传到服务器上,进行安装
dpkg -i *.deb
  • 查看安装的docker版本
root@flexusx-ebe8:/home/docker# docker -v
Docker version 27.1.2, build d01f264

docker-compose安装

  • docker容器安装完毕后,开始安装docker-compose
  • https://github.com/docker/compose/tags离线下载docker-compose的包
  • 因为我是x86-64的环境,所以从中找到docker-compose-linux-x86_64进行下载
  • 下载完毕后上传到服务器,然后执行 sudo cp -f docker-compose-linux-x86_64 /usr/local/bin/docker-compose
  • 然后授予可执行权限,sudo chmod +x /usr/local/bin/docker-compose
  • 查看docker-compose版本
root@flexusx-ebe8:/# sudo docker-compose -v
Docker Compose version v2.29.2
  • 这样docker-compose就安装完毕了

什么是habor

  • Harbor 是一个开源的云原生镜像仓库,旨在增强 Docker 容器镜像的管理和安全性。它最初由 VMware 开发,现在是 CNCF(云原生计算基金会)的一部分。Harbor 为容器镜像提供了全面的管理能力,包括镜像的存储、分发、安全性扫描、访问控制和镜像签名等功能。
  • 简单的来说,harbor就是私人镜像仓库,一些自制的docker镜像可以保存到harbor中,然后在docker中配置好harbor的地址与证书,就可以直接从harbor中拉取之前上传的镜像

harbor安装

  • 先去github上下载harbor的离线安装包,https://github.com/goharbor/harbor/releases
  • 把离线文件包传到服务器上
root@flexusx-ebe8:/home/docker/harbor# ls
harbor-offline-installer-v2.11.1.tgz
  • 把文件解压tar zxvf harbor-offline-installer-v2.11.1.tgz,然后进入文件夹 cd harbor
  • 查看解压后的文件
root@flexusx-ebe8:/home/docker/harbor/harbor# ls
common.sh  harbor.v2.11.1.tar.gz  harbor.yml.tmpl  install.sh  LICENSE  prepare
  • 对harbor进行配置,cp harbor.yml.tmpl harbor.ymlvi harbor.yml
    在这里插入图片描述

  • 开始执行脚本预备工作,可能会存在镜像拉取不到的情况,给docker设置国内源即可解决

root@flexusx-ebe8:/home/docker/harbor/harbor# ./prepare 
prepare base dir is set to /home/docker/harbor/harbor
WARNING:root:WARNING: HTTP protocol is insecure. Harbor will deprecate http protocol in the future. Please make sure to upgrade to https
Generated configuration file: /config/portal/nginx.conf
Generated configuration file: /config/log/logrotate.conf
Generated configuration file: /config/log/rsyslog_docker.conf
Generated configuration file: /config/nginx/nginx.conf
Generated configuration file: /config/core/env
Generated configuration file: /config/core/app.conf
Generated configuration file: /config/registry/config.yml
Generated configuration file: /config/registryctl/env
Generated configuration file: /config/registryctl/config.yml
Generated configuration file: /config/db/env
Generated configuration file: /config/jobservice/env
Generated configuration file: /config/jobservice/config.yml
Generated and saved secret to file: /data/secret/keys/secretkey
Successfully called func: create_root_cert
Generated configuration file: /compose_location/docker-compose.yml
Clean up the input dir
  • 开始执行脚本进行安装
[+] Running 10/10✔ Network harbor_harbor        Created                                                                                                                                                0.1s ✔ Container harbor-log         Started                                                                                                                                                0.3s ✔ Container harbor-db          Started                                                                                                                                                0.7s ✔ Container harbor-portal      Started                                                                                                                                                0.7s ✔ Container registry           Started                                                                                                                                                0.7s ✔ Container registryctl        Started                                                                                                                                                0.5s ✔ Container redis              Started                                                                                                                                                0.5s ✔ Container harbor-core        Started                                                                                                                                                0.9s ✔ Container harbor-jobservice  Started                                                                                                                                                1.1s ✔ Container nginx              Started                                                                                                                                                1.1s 
✔ ----Harbor has been installed and started successfully.----

在这里插入图片描述

  • 查看 Harbor 服务状态
root@flexusx-ebe8:/home/docker/harbor/harbor# docker ps
CONTAINER ID   IMAGE                                 COMMAND                  CREATED          STATUS                    PORTS                                   NAMES
9f52d35d9ddc   goharbor/harbor-jobservice:v2.11.1    "/harbor/entrypoint.…"   11 minutes ago   Up 10 minutes (healthy)                                           harbor-jobservice
cdb2d29af0fc   goharbor/nginx-photon:v2.11.1         "nginx -g 'daemon of…"   11 minutes ago   Up 11 minutes (healthy)   0.0.0.0:80->8080/tcp, :::80->8080/tcp   nginx
3b82a4952c62   goharbor/harbor-core:v2.11.1          "/harbor/entrypoint.…"   11 minutes ago   Up 11 minutes (healthy)                                           harbor-core
7bef4d6c41ef   goharbor/redis-photon:v2.11.1         "redis-server /etc/r…"   11 minutes ago   Up 11 minutes (healthy)                                           redis
1fa4be74817e   goharbor/harbor-portal:v2.11.1        "nginx -g 'daemon of…"   11 minutes ago   Up 11 minutes (healthy)                                           harbor-portal
7a02163e92c2   goharbor/harbor-registryctl:v2.11.1   "/home/harbor/start.…"   11 minutes ago   Up 11 minutes (healthy)                                           registryctl
9170b74b6dc7   goharbor/registry-photon:v2.11.1      "/home/harbor/entryp…"   11 minutes ago   Up 11 minutes (healthy)                                           registry
5c108493e04f   goharbor/harbor-db:v2.11.1            "/docker-entrypoint.…"   11 minutes ago   Up 11 minutes (healthy)                                           harbor-db
b096375f4701   goharbor/harbor-log:v2.11.1           "/bin/sh -c /usr/loc…"   11 minutes ago   Up 11 minutes (healthy)   127.0.0.1:1514->10514/tcp               harbor-log
  • 此时harbor已经安装完毕,但还需要去华为云的安全组开启端口进行访问

配置Flexus云服务器X实例安全组

  • 经过上面部署harbor服务,这时候服务是已经部署完毕了,但是我们还没法通过外网进行访问,还需要对Flexus云服务器X安全组的配置进行修改

  • 进入安全组的配置页面
    在这里插入图片描述

  • 新建安全组
    在这里插入图片描述

    在这里插入图片描述

  • 这里我们开放80端口

  • 然后加入新建的安全组
    在这里插入图片描述

  • 这样我们的实例的端口也就开放成功了

访问 Harbor Web 界面

  • 输入弹性公网ip:80,访问页面
    在这里插入图片描述

  • 输入之前配置的账号密码登录
    在这里插入图片描述

  • 至此华为云Flexus X实例docker部署harbor镜像仓库完成

欢迎大家一起加入华为云!

在这里插入图片描述

这篇关于828华为云征文|华为云Flexus X实例docker部署harbor镜像仓库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1136655

相关文章

MySQL多实例管理如何在一台主机上运行多个mysql

《MySQL多实例管理如何在一台主机上运行多个mysql》文章详解了在Linux主机上通过二进制方式安装MySQL多实例的步骤,涵盖端口配置、数据目录准备、初始化与启动流程,以及排错方法,适用于构建读... 目录一、什么是mysql多实例二、二进制方式安装MySQL1.获取二进制代码包2.安装基础依赖3.清

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Apache Ignite缓存基本操作实例详解

《ApacheIgnite缓存基本操作实例详解》文章介绍了ApacheIgnite中IgniteCache的基本操作,涵盖缓存获取、动态创建、销毁、原子及条件更新、异步执行,强调线程池注意事项,避免... 目录一、获取缓存实例(Getting an Instance of a Cache)示例代码:二、动态

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

JSONArray在Java中的应用操作实例

《JSONArray在Java中的应用操作实例》JSONArray是org.json库用于处理JSON数组的类,可将Java对象(Map/List)转换为JSON格式,提供增删改查等操作,适用于前后端... 目录1. jsONArray定义与功能1.1 JSONArray概念阐释1.1.1 什么是JSONA

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker