当前位置: 首页 > news >正文

asp网站如何做伪静态网站页面优化包括

asp网站如何做伪静态,网站页面优化包括,网站套网站代码,做网站服务器哪个好harbor常见问题及解决方法分享 参考自《harbor权威指南》。 1. harbor配置文件不生效 问题现象 无论是在生产环境下还是在测试环境下,都会有对配置文件进行修改的场景。很多用户在停掉Harbor容器后,都会修改配置文件然后启动Harbor,发现配…

harbor常见问题及解决方法分享

参考自《harbor权威指南》。

1. harbor配置文件不生效

问题现象

无论是在生产环境下还是在测试环境下,都会有对配置文件进行修改的场景。很多用户在停掉Harbor容器后,都会修改配置文件然后启动Harbor,发现配置还是保持原样,而不是更新为刚修改的值。

问题原因

Harbor的配置文件在修改后并不会直接生效。Harbor的众多组件都有自己的配置文件和环境变量,但是配置文件harbor.yml只有一个,用户需要通过运行prepare容器,使得Harbor配置文件中的配置项能够渲染到各组件所依赖的配置文件。参考命令如下:

$ docker-compose down -v$ ./prepare --with-notary --with-clair --with-trivy --with-chartmuseum$ docker-compose up -d

2. Docker重启后Harbor无法启动

问题现象

在使用docker部署harbor后,如果重启docker服务,或者重启机器后,有时候会遇到harbor无法访问的问题。某些组件的容器会陷入无限重启状态。

问题原因

原因为Harbor的各个组件容器之间会有依赖关系,这些信息都被定义在配置文件docker-compose.yml中。其中,日志容器会监听本地IP地址127.0.0.1的1514端口,以接收和汇总其他容器的日志。其他容器则将日志输出到标准输出中,然后通过Docker的后台进程(Docker Daemon)将日志统一转发到127.0.0.1:1514。但是,日志容器和Docker后台进程的启动顺序是随机的,若日志容器先启动,则它会发现Docker后台并未启动,所以启动失败,其他容器无法连接日志容器,也会启动失败。

解决方法

这个问题的源头是两个互相依赖的进程无法保证启动顺序,因为其启动顺序由操作系统调度决定,所以Docker后台进程的生命周期管理已经超出了Harbor的能力范围,无法在Harbor层面解决。但是,我们可以在操作系统层面定义服务的启动顺序,在主流Linux系统如Ubuntu和CentOS中利用类似如下所示的systemd配置,将其根据自己的需求稍做修改,并保存到操作系统的systemd启动配置文件夹处,放到/lib/systemd/system文件夹或者/usr/lib/systemd/system/文件夹,或者/etc/systemd/system路径下:

创建文件harbor.service,内容如下:

[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=https://goharbor.io/docs[Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/docker-compose -f  /usr/local/harbor/docker-compose.yml up
ExecStop=/usr/local/bin/docker-compose -f  /usr/local/harbor/docker-compose.yml down[Install]
WantedBy=multi-user.target

将harbor启动的文件放置到如下路径:

/usr/local/harbor/docker-compose.yml

设置服务启动并设置开机自动:

systemctl daemon-reload
systemctl start harbor.service
systemctl enable harbor.service

验证测试

  1. 重启docker服务,harbor服务会跟着重启:
[root@harbor ~]# systemctl restart docker
[root@harbor ~]# systemctl status harbor
● harbor.service - HarborLoaded: loaded (/etc/systemd/system/harbor.service; enabled; vendor preset: disabled)Active: active (running) since Tue 2024-12-03 21:28:07 EST; 52s ago

验证harbor使用正常。

  1. 重启harbor机器后,harbor验证访问正常。

3. 在丢失secret key的情况下删除已签名的镜像

Harbor的镜像签名功能是镜像安全相关功能的重要一环,由 Notary 提供。已签名的镜像需要得到Notary的验证和授权才能被删除,如果用户丢失了Notary的secret key,则无法再删除已签名的镜像。在这种情况下,管理员是可以绕开限制将其删除的,步骤如下。

  1. 停止harbor
$ docker-compose down -v
  1. 运行prepare,生成不带notary的docker-compose文件
$ ./prepare --with-clair --with-chartmuseum --with-trivy
  1. 启动harbor
$ docker-compose up -d
  1. 此时harbor已经关闭了Notary组件,可以在harbor中删除已签名的镜像

  2. 恢复之前的配置

$ docker-compose down -v
$ ./prepare --with-clair --with-chartmuseum --with-trivy --with-notary
$ docker-compose up -d

说明

harbor v2.11.0中已去除notory、clair等安全组件,仅支持trivy,上述操作适用于支持notary的版本,例如v2.0.0。

4. 丢失了系统管理员admin的密码

Harbor的系统管理员admin如果丢失密码后,可参考如下方法将admin的密码重置。

  1. 在部署harbor的docker机器连接Harbor数据库;
$ docker exec -it harbor-db /bin/bash
$ psql -U postgres
  1. 选择Harbor数据库registry:
postgres=# \lList of databasesName    |  Owner   | Encoding |   Collate   |    Ctype    | ICU Locale | Locale Provider |   Access privileges   
-----------+----------+----------+-------------+-------------+------------+-----------------+-----------------------postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |            | libc            | registry  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |            | libc            | template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |            | libc            | =c/postgres          +|          |          |             |             |            |                 | postgres=CTc/postgrestemplate1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |            | libc            | =c/postgres          +|          |          |             |             |            |                 | postgres=CTc/postgres
(4 rows)postgres=# \c registry
You are now connected to database "registry" as user "postgres".

使用下面步骤3、4中的其中一种方法进行重置密码。

  1. 执行如下命令,重置admin密码为空
postgres=# select * from harbor_user;
postgres=# update harbor_user set salt='', password='' where where user_id = 1;

重启Harbor服务生效,然后使用harbor.yaml中配置的初始密码登录。

  1. 上述修改方式需要重启harbor组件,会影响业务。如果需要不停机恢复,可以尝试如下方法:
update harbor_user set password='1343c400219e7e2ef9f4c0843d340ba4', salt='2uI1HGu1Wd21qvflTPCd2XF4scUqyGZW'  where username='admin';

上述password和salt字段值为默认密码Harbor12345加密后的字符串,运行上述命令后,即可使用默认密码Harbor12345登录。

  1. 退出
registry=# \q
postgres [ / ]$ exit
exit
http://www.hkea.cn/news/164680/

相关文章:

  • 淮安做网站优化百度竞价排名是什么方式
  • 食品公司网站源码谷歌网页
  • 做网站用哪种代码比较好推广seo发贴软件
  • 3d效果图软件宁波seo行者seo09
  • 美国做按摩广告的网站网站优化教程
  • wordpress云建站教程信息流广告公司一级代理
  • 我有一个域名怎么做网站百度一下下载
  • 郑州网站建设品牌好安装百度到桌面
  • 株洲做网站定制百度灰色词优化排名
  • 上海网页设计公司兴田德润电话排名优化外包公司
  • 做360网站优化快推广普通话宣传语手抄报
  • 动态网站开发语言有哪些大学生创新创业大赛
  • 关键词推广公司网站网络排名优化方法
  • 福州移动网站建设网络营销推广工具有哪些
  • win2008sr怎么用iis做网站国外网站加速
  • 合肥++网站建设磐石网站seo
  • 万网主机怎么上传网站如何在百度上投放广告
  • 做网站时如何给文字做超链接全球疫情最新数据消息
  • 四川省住建厅官方网站3分钟搞定网站seo优化外链建设
  • 做网站阳泉巨量千川广告投放平台
  • 温岭哪里有做网站的如何自制网站
  • 知道创于 wordpress搜索引擎优化宝典
  • 乌兰县wap网站建设公司有效获客的六大渠道
  • 微信网站开发教程视频教程百度一下主页官网
  • 网站开发专业前景关键词挖掘排名
  • 网站开发属于什么职位类别seo查询站长工具
  • wordpress postmetaseoul national university
  • 商务网站的主要存在形式杭州百度快照优化公司
  • 个人备案网站做购物网站可以不班级优化大师免费下载电脑版
  • 贸易网站建设互联网广告代理加盟