アプリケーションの名前を変更する DNS エイリアス
auto-cert の SUBDOMAINS リスト、利用可能な健康チェック URL と ミドルウェアのコメントは、アプリと一致する → サブドメインの名前を置換します kamo内部およびセキュリティサービス.
宇宙バックアップ:quay.io、docker.io/minio/mc から mc をプルする [skip ci]
MinIO は Docker Hub 画像を読み込み、バックアップのアップロードコンテナはそのままに 2026-09-12 からの ImagePullBackOff。 concurrencyPolicy 禁制で 1 つのスタック ジョブは毎晩ブロックされ、毎晩実行されます: kamouniverseバックアップは4日間...
node-config: レジストリプルーンは、 --delete-untagged [skip ci] でゴミ収集をしてはならない
K1m1の夜のプルーンはホストにしか住んでいません。 そのごみ収集は、 --delete-untagged, パープラットフォームのマニフェストを削除する OCI イメージインデックス リファレンス(タグを持たない) 17 の 57 の展開された画像はタグを保持しましたが、 amd64マニフェストを失ったので、Podは...
自動認証: www.stack.loans のプロビジョニングを停止する
2026-08-04 以降、レートタックの不動産は 0 にスケールアップされています。 stack.loans の HTTP-01 証明書は2026-08-02で期限が切れ、注文 すべてのループを再作成しました。 静的エントリ(およびそれが付与される apex の許容) 彼らが戻って来るのを続けたものです。 同じ修正率...
無効なnode-exporterのxfsコレクタ[skip ci]
このカーネルの /proc/fs/xfs/stat ("xpc") を解析し、エラーをオンに すべてのスクレイプ、ノードごとの~240/h。 ファイルシステムの使用は影響を受けない(ファイルシステム) コレクター)。 チャートの2つのデフォルト extraArgs はリストから繰り返されます それらを置き換えます.
Kamo app は ocr * のテーブルを所有しています [skip ci]
OCRService(webとworker)は、起動時に独自のocr *テーブルを変更し、拒否します。 オーナーシップなしで起動します。kamo app への切り替え後、ワーカーのクラッシュループ "テーブルocr document progressの所有者である必要があります。" 4つのテーブルを手渡す kamo a...
すべてのアプリケーションワークロードのための非スーパーユーザーkamo appロール [skip ci]
スーパーユーザーカモとして接続されたサービス。 生成する idempotent スクリプトを追加します。 kamo app(スーパーユーザーではなく、カモのメンバーではないので、ロールバックを設定することはできません) すべてのスキーマ/テーブル/シーケンスとデフォルト権限、および所有権の付与 実行時にテーブルサービス...
YugabyteDB tserver/YSQL と SecurityService プールメトリックをスクレイプ [skip ci]
接続サイジングは、その背後にあるデータがなかった:データベースやデータベースをスクレイピングしたものは何もありません ヒカリプール。 キュレーションされたサーバーレベルのtserverジョブを追加する(フルエンドポイントは ~3.25M は、メトリックがタブレットごとに繰り返すため)、YSQL/connection-m...
node-config(k3m1-ext): 独自のアドレスからのトラフィックによってのみ使用される、DHCP の eno1
k3m1の3番目のケーブルは、共有バルクリレー(postfix-orgs、47.181.8.86)が送信するポートです。 DHCP はアドレスと他に何もないため、メインテーブルは非接触です。 ルール 1860 は送信のみ そのアドレスからテーブル186(eno1のルータ、到達不能なフロア)へのトラフィック。 nftab...
auto-cert: ジャンクサートのクリーンアップを実際にのために書かれていたジャンクを見てみましょう
cleanup orphan certificates() は '-l auto-cert.kamo/fqdn' でリストされています。 お問い合わせ ラベルは除去する機能がある走査器certsより新しいです、従って セレクターは、意図した目標を正確に除外し、削除しませんでした 何でも: baidu.com、spoti...
auto-cert: org の証明書を 90 秒ごとに 1 回ではなく、バッチとして発行
新しい組織は、そのホストのすべての11のための証明書を必要とします。 それぞれが別の証明書の証明書です。 各ループが待ち受ける 次の仕様を適用し、再構築する前にReadyになるホスト TLSStore は、毎回、ホストが約105秒離れたところに現れました。 終了まで約20分。 cert-managerは、常に実行して満...
主題のホストの好ましいbrotli、および前の合理的を訂正して下さい
2つのこと、そのうちの1つは、この前にコミットに修正します。 前のコミットは `encodings: [br, gzip]` をプローブで正当化しました api.kamocrm.com に対して。 プローブが間違っていた。 APIサービスセット `server.compression.enabled: true` を...
プレッダーbrotliは、既に圧縮されているものを圧縮するのを止めます
共有の `compress` ミドルウェア は `compress: {}` で、3 デフォルトを分離し、どれも私たちが望むものです。 Traefik は、クライアントがそれをすべて提供するたびに gzip を選択します。 クライアントが要求した注文。 api.kamocrm.com に対して測定される、 Sprin...
明示的な列リストで読み込む -- 位置COPYは静かに腐敗します
COPY t STDIN の列リスト無しで CSV フィールドをテーブルの PHYSICAL にマップしません 列の順序。 CSV は、CockroachDB および Hibernate の COPY (SELECT *) から来ています。 YugabyteDBテーブルを完全に異なる順序で作成する -- esign t...
明示的な列リストで読み込む -- 位置COPYは静かに腐敗します
COPY t STDIN の列リスト無しで CSV フィールドをテーブルの PHYSICAL にマップしません 列の順序。 CSV は、CockroachDB および Hibernate の COPY (SELECT *) から来ています。 YugabyteDBテーブルを完全に異なる順序で作成する -- esign t...
CockroachDB -- 714 テーブル、8706 列のスキーマのparity
ドリフトの差分は、その場所を獲得しました。 KamoInitializerService はスキーマをビルドします JPAエンティティティティティティティティから599テーブルを生産し、714を運びます。 ザ 115 違いは、エンティティティティが削除されたテーブルであり、そのテーブルは決してありません -- aban...
CockroachDB -- 714 テーブル、8706 列のスキーマのparity
ドリフトの差分は、その場所を獲得しました。 KamoInitializerService はスキーマをビルドします JPAエンティティティティティティティティから599テーブルを生産し、714を運びます。 ザ 115 違いは、エンティティティティが削除されたテーブルであり、そのテーブルは決してありません -- aban...
宇宙移行のための完全なCockroachDB->YSQL翻訳者
すべての15のマイグレーションは、YugabyteDB:111テーブルにクリーンに適用されます。 正確にCockroachDB. 8つの異なるCockroachDBのみの構成は、 処理されると、ミグレータを実行して失敗するまで、一度に見つけられます。 STRING/BYTESタイプ、HASH Bucket count...
宇宙移行のための完全なCockroachDB->YSQL翻訳者
すべての15のマイグレーションは、YugabyteDB:111テーブルにクリーンに適用されます。 正確にCockroachDB. 8つの異なるCockroachDBのみの構成は、 処理されると、ミグレータを実行して失敗するまで、一度に見つけられます。 STRING/BYTESタイプ、HASH Bucket count...
COPYからSTDOUTまでのCSVエクスポート、CSV-awareの検証
輸送はCOPY ... とSTDOUTに (FORMAT CSV), ない `cockroach sql --format=csv`。 後者はSQL NULLをリテラル文字列 "NULL" としてレンダリングします。 黙って変換されるだろう、実際の値から区別できない データベース内のすべての NULL は、インポートの...
COPYからSTDOUTまでのCSVエクスポート、CSV-awareの検証
輸送はCOPY ... とSTDOUTに (FORMAT CSV), ない `cockroach sql --format=csv`。 後者はSQL NULLをリテラル文字列 "NULL" としてレンダリングします。 黙って変換されるだろう、実際の値から区別できない データベース内のすべての NULL は、インポートの...
スキーマ・アウェアを一掃する。 kamo は 680 ではなく 714 のテーブル、
表 schema='public' に対する SHOW BACKUP (714 オブジェクト) のクロスチェック 在庫(680)は、他の5つのスキーマに住んで34テーブルを露出しました。 email metadata、email provider、email campaign、kamotokens、 meet prov...
スキーマ・アウェアを一掃する。 kamo は 680 ではなく 714 のテーブル、
表 schema='public' に対する SHOW BACKUP (714 オブジェクト) のクロスチェック 在庫(680)は、他の5つのスキーマに住んで34テーブルを露出しました。 email metadata、email provider、email campaign、kamotokens、 meet prov...
CockroachDB を YugabyteDB パーティーチェック用のベースラインキャプチャ
2つのパス:安いバッチカウント(*)、それから順序独立したチェックサム。 checksum は 1 列 md5 のハッシュを、明らかなものではなく整数としてまとめます。 md5(string agg(h ORDER BY h)))。 どちらも順に依存していますが、string aggg geolite blocks'...
CockroachDB を YugabyteDB パーティーチェック用のベースラインキャプチャ
2つのパス:安いバッチカウント(*)、それから順序独立したチェックサム。 checksum は 1 列 md5 のハッシュを、明らかなものではなく整数としてまとめます。 md5(string agg(h ORDER BY h)))。 どちらも順に依存していますが、string aggg geolite blocks'...
ミートシークレット ****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
ジブリのfinalize.shは、録画アップロードをMediaServiceに認証します。マッチ MediaService のクラスター *** 値に対して検証します.
提供 R1 MEDIA JetStream ストリーム ビア idempotent boottrap 仕事
メディア/リードフィードイベント (media.feed.*, media.post.*) は JetStream がなかった ストリーム, ので、返された公開 '503 要求のために利用可能な応答なし' (chat.> は CHAT MESSAGES に覆われています。) NATSは単一のスタンドアローンインスタン...
node-config(k1m1-runner): レコード data.forgejo.org IPv4 ピン + 容量=6
ライブのオンノード変更:データ。 forgejo.org は IPv6 だけであり k1m1 は いいえ IPv6 のルートは、ジョブコンテナは ~133s と action/checkout が失敗しました。 ピンそのIPv4 --add-host、/etc/forgejo-runner/config.yaml を ...
Klusterservicesを単一のk1m1+k3m1クラスターに統合
- NATS:スタンドアローンシングルポッドピン付きk1m1(k2m1 +ジェネリッククラスターバリアントをドロップ) - CockroachDB: ピン k1m1、単一ノード --join - MySQL: 単一インスタンスは、ratetack (cluster-services ns, hostPath on k1...
アップグレードv3.0 → v3.3 (断続的なWebSocketの接続を解除)
v3.0.0 は WS 101 のアップグレードを完了し、ソケットを閉じます。 フレームフロー — 宇宙ゲームクライアントの「負荷の接続解除」の再発 headless: ページの読み込みの WS が 101 の後に ~200ms の 1 つ/冷たい WS、クライアントのリトライ watchdog マスクします。 WSブ...
node-config: ドキュメント k1m1 forgejo-runner config (---add-host for submodule DNS)
K1m1上のジョブコンテナはパブリックDNSに戻り、フリート・スウェット http://k1m1:3000 .gitmodules URL はそこにクローン化できません。 ピンk1m1 コンテナ.options --add-host (broke 融資サービス CI 2026-06-12) 経由でコンテナ.
node-config: ドキュメント k1m1 ドッカー デーモン 安全登録
K1m1 forgejo-runnerのビルドはHTTP Forgejoレジストリにプッシュします。 daemon.json は :5000 エントリのみで出荷されるため、すべてのビルドジョブランディング k1m1 では HTTPS-to-HTTP エラー (2026-06-12) で Docker ログインが失敗しま...
共有2ノードクラスターを k3m1 で LAN に接続します。アカウントの分離
LAN ルート (192.168.4.22 <-> 192.168.4.36 ) の WireGuard のルートを修復します。 :6222) ルート URL に埋め込まれたクレジット。 クラスターの名前を変更する kamo-ratestack-nats (ファルタック/k3m1 と共有). マルチアカウント分離:カモ...
ノード構成: k1m1 kubelet max-pods 110 -> 200 を上げる
デフォルト RKE2 max-pods=110 がヒットし、kamolos ロール更新をブロック デプロイ (maxSurge:1,maxUnavailable:0 は、前の新しいPodを作成するためのスロットを必要とします 古い;キャップでデッドロックされた)。 k1m1 は 48 コア + 125 GiB RAM...
Update Traefik routes: themes.* assets now only load from k1m1 minio instead of balancing across k0m1, k1m1, and k2m1
Use VPN addresses for k0m1/k2m1 minio-public backends
- Endpoints: k0m1 10.8.0.1, k2m1 10.8.2.1 (VPN); k1m1 stays local - IngressRoute host match: 100.64.x.x -> 10.8.0.1, 10.8.1.1, 10.8.2.1
MinIO secret creation from workflow (MinIO is managed manually)
Update IP addresses from Tailscale (100.64.x.x) to WireGuard VPN (10.8.x.x) for NATS, CockroachDB, and CI/CD workflows
カモロゴのCSSのみのアプローチを使用する
CSSの背景画像を使用して、壊れたSVGファイルマウントを削除 #logo要素に直接外部ロゴをロードする
Fix 外部カモロゴURLを参照するためのロゴ.svg
SVGイメージ要素を使って外部ロゴを埋め込む 壊れた変換で複雑なパス
ラウンドキューブロゴ.svgをカモロゴSVGに置き換える
マウントカスタムロゴ.svgに******************** Roundcubeの透かし/背景のロゴを取り替えるため
RoundcubeウォーターマークロゴをオーバーライドするカスタムCSSファイルを追加
- 透かしオーバーライドでカスタムCSを作成 - CSS ファイルを /var/www/html/custom.css にマウントする - 追加の スタイルシートをロードする Roundcubeの設定
ウォーターマークを含むカモロゴですべてのラウンドキューブロゴを交換
Skin logo config を配列形式に更新してカバーします。 - 主要なヘッダーのロゴ - 小さい崩壊されたヘッダーのロゴ - 箱の透かし/背景のロゴ
メールサブドメインを自動認証SUBDOMAINSリストに追加
Mail.kamocrm.com の自動 SSL 証明書作成を有効にします
Postfix ポートを 25 と 587 で hostPort でインバウンドメール
K1M1での外部SMP接続を受信するために必要な
Mailgun SMTP を直接使用する Roundcube の設定
外部メールのローカル Postfix を迂回し、直接接続する smtp.mailgun.org ポート上のTLS 587
MySQLサポートでAlpineベースのデプロイメントにPostfixを切り替える
Dovecotと同様に、Alpine 3.18とpostfix-mysqlパッケージ 信頼性の高い MySQL 仮想マップのサポートのためのランタイムにインストール
Fix postfix command to use apt-get instead of apk
boky/postfix is Debian-based, not Alpine
Add postfix-mysql support for MySQL virtual maps
Installed postfix-mysql package at container startup to enable MySQL dictionary lookups for virtual domains/users/aliases
