欢迎~

Remo的个人博客

Ubuntu 使用 Nexus 3 添加 Docker 和 Apt 仓库代理

通过 Docker 运行 Nexus 3 确保机器上已经安装了 Docker 以及 Docker-compose 可通过以下配置文件运行(自行根据需要调整): version: "3.4" volumes: nexus-data: driver: local services: nexus3: image: sonatype/nexus3:latest container_name: nexus restart: always environment: TZ: Asia/Shanghai ports: - 8081:8081 - 8082:8082 volumes: - nexus-data:/nexus-data 成功运行后,可通过以下命令获取 admin 用户的初始密码(其中的nexus3-server对于上述配置文件的container_name): docker exec nexus3-server cat /nexus-data/admin.password 反向代理等相关步骤在此略过。 配置 Docker 代理仓库 我们这里以 Docker 官方仓库和 Microsoft Artifact Registry 为例,配置代理,以解决国内访问这些 docker 仓库的网络问题。 1. 添加 Docker Hub 代理仓库 使用管理员账号登录后,点击顶部的齿轮图标进入设置页。选择 Repository => Repositories => Create repository 项,仓库类型选择 docker(proxy)。...

February 3, 2024 · 2 分钟 · Remo

在 Ubuntu 上部署 Harbor 并配置反代

Harbor 是 VMware 公司开源的企业级 DockerRegistry 项目,其目标是帮助用户迅速搭建一个企业级的 Dockerregistry 服务.它以 Docker 公司开源的 registry 为基础,提供了管理 UI,基于角色的访问控制(Role Based Access Control),AD/LDAP 集成、以及审计日志(Auditlogging) 等企业用户需求的功能,同时还原生支持中文. 最终目标 成功在 Docker 中运行 Harbor 服务(不使用默认的80和443端口),并通过配置 Nginx 反代以从外部访问 Harbor 安装 Docker 及 docker-compose 请参考这篇博文:【转】在 Ubuntu 上安装 Docker CE 及 Docker-compose 下载 Harbor 安装包 Harbor 安装包的发布页地址为:https://github.com/goharbor/harbor/releases 1. 下载 官方提供了在线安装包和离线安装包两种类型,请自行选择想要的版本。 在发布页下载安装包后,上传至 Ubuntu 服务器 或 运行如下命令: wget https://github.com/goharbor/harbor/releases/download/v2.9.2/harbor-online-installer-v2.9.2.tgz 请注意修改对应版本和在线/离线安装包 2. 解压 tar xf ./harbor-online-installer-v2.9.2.tgz 请注意修改对应的文件名...

January 29, 2024 · 1 分钟 · Remo

【转】在 Ubuntu 上安装 Docker CE 及 Docker-compose

原文来自:https://hackmd.io/@rpwis/SJSaav9Fj ,本文稍作修改,以适应Ubuntu的使用 CE: Community Edition 安装依赖 sudo apt update sudo apt -y install apt-transport-https ca-certificates curl gnupg2 software-properties-common 加入 Docker 官方的 GPG key curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/docker-archive-keyring.gpg 下载 Docker CE 的 repository sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" 安装 Docker CE 和 docker-compose sudo apt update sudo apt install docker-ce docker-ce-cli containerd....

January 29, 2024 · 2 分钟 · Remo

使用diskpart释放WSL2的磁盘空间

原文链接 当我们在WSL里清除一些docker 镜像,或者删除一些文件时,发现WSL的虚拟磁盘文件大小并没有减少,这时我们可以用DiskPart来收缩WSL的虚拟磁盘。 ❓什么是DiskPart? DiskPart取代了它的前身 —— fdisk,是一个命令行实用程序,可以管理自Windows 2000以来运行所有操作系统版本的计算机中的磁盘、分区或卷,还包括最新的Windows 11。用户可以输入DiskPart命令直接组织硬盘分区,或创建文本文件脚本来执行多个命令。您可以在磁盘管理工具中使用的大多数命令都集成在DiskPart中。 📢关闭WSL2 在执行压缩命令之前需要先关闭WSL2, 使用命令wsl --shutdown 🧪使用DiskPart释放WSL2的磁盘空间 使用快捷键 window + r 打开运行窗口,输入diskpart, 然后点击OK。 可以打开DiskPart 的命令行工具窗体 可以使用 help select vdisk 命令来查看帮助。 在目录C:\Users\你的用户名\AppData\Local\Packages 中查找 ext4.vhdx 文件 选择虚拟磁盘文件(就是上一步中查找到的文件) select vdisk file="C:\Users\你的用户名\AppData\Local\Packages\TheDebianProject.DebianGNULinux_76v4gfsz19hv4\LocalState\ext4.vhdx" 执行压缩磁盘命令compact vdisk 当 100% 完成时,关闭命令行窗口即可。

June 13, 2023 · 1 分钟 · Remo

【转】C#多线程下的调优

本文转载自博客园-包子wxl:https://www.cnblogs.com/wei325/p/16065342.html 一、原子操作 先看一段问题代码 /// <summary> /// 获取自增 /// </summary> public static void GetIncrement() { long result = 0; Console.WriteLine("开始计算"); //10个并发执行 Parallel.For(0, 10, (i) => { for (int j = 0; j < 10000; j++) { result++; } }); Console.WriteLine("结束计算"); Console.WriteLine($"result正确值应为:{10000 * 10}"); Console.WriteLine($"result 现值为:{result}"); Console.ReadLine(); } 这是多线程下,result的值不同步的原因。 1.基于Lock实现 平时大家用的最多的应该就是加锁了,同一时间,只有一个线程进入代码块。 实现代码: private static Object _obj = new object(); /// <summary> /// 原子操作基于Lock实现 /// </summary> public static void AtomicityForLock() { long result = 0; Console....

April 14, 2022 · 8 分钟 · Remo