问题描述 今天编译新的镜像时突然出现如下错误信息 ➜ custom git:(master) docker buildx build --platform linux/amd64,linux/arm64 -t chihpengkao/nextcloud:latest -t chihpengkao/nextcloud:v2022.06.22 --push . [+] Building 1.8s (5/5) FINISHED => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s...
使用 Docker buildx 构建多架构镜像
写在前面 Docker 默认的 buildx 无法实现在同一个 build 内创建多架构镜像,这显然不利于我们的维护。 解决方案 使用 multiarch/qemu-user-static 仿真器来创建多架构环境 docker run --rm --privileged multiarch/qemu-user-static --reset -p yes 创建自定义构建器 multiarch docker buildx create --name multiarch --driver docker-container --use 初始化自定义构建器 docker buildx inspect ...
解决 Nginx 反向代理 Docker 中的 apache2 站点时不能正确显示访问者 IP 地址的问题
写在前面 有时存在这么一种情况,docker 里跑着某个运行在 apache2 上的 HTTP 站点, nginx 服务器安装在主机对其进行反向代理。出于安全防护、统计等原因,你需要站点能获得访问者真实的 IP 地址,却发现通常 nginx 做反向代理时传递 X-Real-IP 和 X-Forwarded-For 的方法不管用了。 这是因为 docker 默认的 userland-proxy 转发方式会剥离数据包的原始地址,导致以桥接模式运行的 docker 容器获取到的 REMOTE_ADDR 变成了 docker 网关地址。X-Real-IP 和 X-Forwarded-For...
使用 Calibre-Web 搭建供个人和家庭使用的在线图书馆
使用 watchtower 自动更新 Docker 容器
watchtower 简介 watchtower 可以定期检查本地所有的 docker 容器,当它们存在新版本时,自动进行更新。 简易使用命令 检查更新本地所有的 docker 容器,并在更新后自动清理旧版本的镜像 docker run --rm --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once 检查更新指定容器,并在更新后自动清理旧版本的镜像,只需要在命令后面加上容器名称,例如 vaultwarden 和 nginx docker...
使用 Docker 搭建自己的 Git 仓库管理工具 – Gitea
Gitea 简介 Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。 功能特性 支持活动时间线 支持 SSH 以及 HTTP/HTTPS 协议 支持 SMTP、LDAP 和反向代理的用户认证 支持反向代理子路径 支持用户、组织和仓库管理系统 支持添加和删除仓库协作者 支持仓库和组织级别 Web 钩子(包括 Slack 集成) 支持仓库 Git 钩子和部署密钥 支持仓库工单(Issue)、合并请求(Pull Request)以及 Wiki 支持迁移和镜像仓库以及它的 Wiki 支持在线编辑仓库文件和 Wiki 支持自定义源的 Gravatar...
使用 Docker 搭建自己的 Git 仓库管理工具 – GitLab
GitLab 简介 GitLab 是由 GitLab Inc. 开发的可视化 Git 仓库管理工具,它是完全免费的开源软件,按照 MIT 许可证分发。 建设性意见 部署在数据中心、拥有公网 IP 地址的家用网络中,或是使用内网穿透,以便随时随地访问 部署在 7 x 24 运行的 Linux 服务器、NAS 网络存储或其它小型化设备上 部署在创建有 RAID 阵列的设备上可以避免硬盘损坏引发的数据损毁 准备工作 安装 Docker 安装 Docker 可视化容器管理工具 – Portainer GitLab 部署 创建用于持久化存储 GitLab 数据的目录(命名规则参考) mkdir -p...