ギャバンITサービス
お菓子の家が作れるシステムエンジニアです

Dockerでubuntu24のリモートデスクトップ接続できるコンテナ

ubuntuが最近22から24になった。 ローカルlinuxを先に 22から24へバージョン上げた 。 xrdpコンテナも 自分のメモ 見ながらバージョン上げたる。 20から22にバージョン上げた時はdanchitnisさんのものを使わせてもらって、いい勉強になった。 さて今回はどうやろ。 compose.ymlを準備 ⭐️の箇所を22から24に変えたらええ。 永続化領域もcl_ubun22からコピーして用意しとく。 1 2 3 4 5 6 7 8 9 10 cl_ubu24gvis: ⭐️ image: gvis-ubu24:24gvis ⭐️ privileged: true hostname: clubu24 ⭐️ ports: - "33389:3389" volumes: - ./nariDockerDat/cl_ubun24:/gvis ⭐️ tty: true shm_size: 512m Dockerfileを用意 dockerhubのubuntuの公開具合を見て24.04のタグがあることを確認しとく。 ...

logrotateの設定

ログファイルって勝手に膨れる。 /varとか別パーティションにしてるとき、dfで占有量のパーセンテージの数字の大きさに気づいて「デカなったなぁ」ってなることもある。 ある程度のサイズになったりとか、日付単位でログ残しときたいとか考えることもある。 sambaとかapacheとかapt/dnfしたときに設定が勝手に入ってくれるけど、バックアップのログとか自分用のログがあるときは自分でコントロールする必要がある。 OSを切り替えるときに設定はいつも継ぎ足しているので、1回作ったらもうほとんど触らない。 そもそもlogrotateとは 説明してくれてる方がおられる。 作者さんありがとう。 【logrotate】の仕組みと書き方, オプション一覧, 設定反映と再起動について | SEの道標 milestone-of-se.nesuke.com 最近だと、qiitaでも読みやすく書いてある。 logrotate入門 #Linux - Qiita qiita.com ログの維持結果 自分用の処理で維持するログは/gvis/logに出力してる。 ここが膨れないようコントロールするとこうなる。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 $ cd /gvis/log $ ll 合計 87M drwxrwxr-x 2 nari nari 4.0K 2022-08-30 05:30:10 ./ drwxr-xr-x 8 nari nari 4.0K 2022-06-15 06:47:50 ../ -rw-r--r-- 1 nari nari 571 2022-08-30 04:23:10 000_serviceStart.log -rw-rw-r-- 1 nari nari 15M 2022-08-29 08:42:55 001_sysBackup.log -rw-rw-r-- 1 nari nari 4.7M 2022-08-26 08:44:12 001_sysBackup.log.1.gz -rw-rw-r-- 1 nari nari 4.7M 2022-08-19 08:43:35 001_sysBackup.log.2.gz -rw-rw-r-- 1 nari nari 4.7M 2022-08-12 08:39:21 001_sysBackup.log.3.gz -rw-rw-r-- 1 nari nari 4.6M 2022-08-05 08:37:06 001_sysBackup.log.4.gz -rw-rw-r-- 1 nari nari 4.6M 2022-07-29 08:37:26 001_sysBackup.log.5.gz -rw-rw-r-- 1 nari nari 2.8M 2022-07-22 08:36:46 001_sysBackup.log.6.gz -rw-rw-r-- 1 nari nari 4.6M 2022-07-15 08:36:34 001_sysBackup.log.7.gz -rw-rw-r-- 1 nari nari 4.6M 2022-07-08 08:38:03 001_sysBackup.log.8.gz -rw-rw-r-- 1 nari nari 2.8M 2022-07-01 08:38:26 001_sysBackup.log.9.gz -rw-rw-r-- 1 nari nari 0 2022-08-30 04:23:07 002_GVISbackup.log -rw-rw-r-- 1 nari nari 4.3M 2022-08-29 08:22:41 002_GVISbackup.log.1.gz -rw-rw-r-- 1 nari nari 4.2M 2022-08-24 08:23:57 002_GVISbackup.log.2.gz -rw-rw-r-- 1 nari nari 3.9M 2022-08-19 08:24:02 002_GVISbackup.log.3.gz -rw-rw-r-- 1 nari nari 3.9M 2022-08-16 08:21:03 002_GVISbackup.log.4.gz -rw-rw-r-- 1 nari nari 3.6M 2022-08-10 08:18:41 002_GVISbackup.log.5.gz -rw-rw-r-- 1 nari nari 3.6M 2022-08-04 08:19:03 002_GVISbackup.log.6.gz -rw-rw-r-- 1 nari nari 3.5M 2022-07-29 08:18:40 002_GVISbackup.log.7.gz -rw-rw-r-- 1 nari nari 3.7M 2022-07-25 08:18:13 002_GVISbackup.log.8.gz -rw-rw-r-- 1 nari nari 3.6M 2022-07-15 08:17:12 002_GVISbackup.log.9.gz -rw-rw-r-- 1 nari nari 1.2K 2022-08-29 08:02:04 003_gcpLog.log -rw-rw-r-- 1 nari nari 320 2022-08-26 08:02:10 003_gcpLog.log.1.gz -rw-rw-r-- 1 nari nari 404 2022-08-19 08:02:08 003_gcpLog.log.2.gz -rw-rw-r-- 1 nari nari 468 2022-08-12 08:02:25 003_gcpLog.log.3.gz -rw-rw-r-- 1 nari nari 450 2022-08-05 08:02:07 003_gcpLog.log.4.gz -rw-rw-r-- 1 nari nari 415 2022-07-29 08:02:05 003_gcpLog.log.5.gz -rw-rw-r-- 1 nari nari 346 2022-07-22 08:02:04 003_gcpLog.log.6.gz -rw-rw-r-- 1 nari nari 389 2022-07-15 08:02:02 003_gcpLog.log.7.gz -rw-rw-r-- 1 nari nari 397 2022-07-08 08:02:02 003_gcpLog.log.8.gz -rw-rw-r-- 1 nari nari 378 2022-07-01 08:01:58 003_gcpLog.log.9.gz -rw-rw-r-- 1 nari nari 174 2022-08-29 09:45:56 004_gdr.log -rw-rw-r-- 1 nari nari 209 2022-08-26 09:45:58 004_gdr.log.1.gz -rw-rw-r-- 1 nari nari 213 2022-08-19 09:45:46 004_gdr.log.2.gz -rw-rw-r-- 1 nari nari 246 2022-08-12 09:46:36 004_gdr.log.3.gz -rw-rw-r-- 1 nari nari 215 2022-08-05 09:47:05 004_gdr.log.4.gz -rw-rw-r-- 1 nari nari 245 2022-07-29 09:49:42 004_gdr.log.5.gz -rw-rw-r-- 1 nari nari 174 2022-07-22 09:46:53 004_gdr.log.6.gz -rw-rw-r-- 1 nari nari 216 2022-07-15 09:46:39 004_gdr.log.7.gz -rw-rw-r-- 1 nari nari 220 2022-07-08 09:45:31 004_gdr.log.8.gz -rw-rw-r-- 1 nari nari 192 2022-07-01 09:45:08 004_gdr.log.9.gz -rw-r--r-- 1 nari nari 9.0K 2022-08-30 04:23:11 100_samba.log -rw-r--r-- 1 nari nari 4.8K 2022-08-30 04:23:11 200_http.log -rw-r--r-- 1 nari nari 31K 2022-08-30 04:23:14 300_docker.log $ 000_serviceStart.logとかは、OS起動した後でデータディスクマウントしてからsamba/apache2/dockerの順番に起動してくときのログが出るようになってて、常に上書きしてるから膨れない。 ...

M4のmacでnginx稼働

ローカルコンテンツ参照用のhtmlの原本が、windowsホストのvmware内ubuntu24と、google cloudで稼働するubuntu24のapacheにそれぞれある。 コンテナ リンク DjangoStatus DjangoのバージョンやDB接続状態表示へ DjangoApp Djangoアプリのログイン画面へ DjangoAdmin Djangoアプリの管理画面へ 主に3種類のコンテナが、x86/arm64のdocker/kubernetesで動いてて、smb共有をapache公開してたりjupyterlabとかルータへのURLもある。 節電してM4のmacだけで動かす場面もあるから、mac側にnginx入れて、ローカルコンテンツ参照用のhtml使うことにした。 10年前のlinuxはapacheで使いはじめたけど、軽いから今はnginxやな。 UTMで動かしてる仮想ホストのmacの中やなくて、物理ホストのmac miniの中で準備してく。 nginxのインストール brew使えるんかなって探してみたら、解説してる方がおられた。 バージョンが1.17ってあるからちょっと古い。 作者さんありがとう。参考に読ませてもらいました。 Macでnginxをインストールして起動する - もちゅろぐ blog.mothule.com インストールやってみる。しもた、ログ捨ててた・・・。 brew install nginx brewでinfo確認すると、バージョンとか、使い方とか、設定ファイルの置き場の情報が見える。 2025年1月はバージョンが新しいめになってるからか、設定ファイルの場所が/usr/local/etc/nginx/nginx.confやなくなってる。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 nari@narimac-mini ~ % brew info nginx ==> nginx: stable 1.27.3 (bottled), HEAD ⭐️バージョンは1.27なんやね HTTP(S) server and reverse proxy, and IMAP/POP3 proxy server https://nginx.org/ Installed /opt/homebrew/Cellar/nginx/1.27.3 (27 files, 2.5MB) * Poured from bottle using the formulae.brew.sh API on 2025-01-05 at 13:29:24 From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/n/nginx.rb License: BSD-2-Clause ==> Dependencies Required: openssl@3 ✔, pcre2 ✔ ==> Options --HEAD Install HEAD version ==> Caveats Docroot is: /opt/homebrew/var/www ⭐️ドキュメントルートはここなんや The default port has been set in /opt/homebrew/etc/nginx/nginx.conf to 8080 so that ⭐️このへんに設定ファイルあるらしい nginx can run without sudo. nginx will load all files in /opt/homebrew/etc/nginx/servers/. To restart nginx after an upgrade: brew services restart nginx ⭐️こうしたらサービス再起動できるんやな Or, if you don't want/need a background service you can just run: /opt/homebrew/opt/nginx/bin/nginx -g daemon\ off\; ==> Analytics install: 12,379 (30 days), 39,623 (90 days), 165,156 (365 days) install-on-request: 12,322 (30 days), 39,534 (90 days), 164,721 (365 days) build-error: 11 (30 days) nari@narimac-mini ~ % nginx設定ファイルの用意とサービス起動 設定ファイルはデフォルトのを.orgって名前で保管しといて、書きたいことだけ足す。ssiを有効にしてヘッダを読み込ませる。 ...

mac+Rancherを使ったdocker環境

x86でkubernetes維持はできるようになったけど、arm64でもやってみたい。 docker使える環境をM4macの中で作り、ビルドできるようにできたらarm64のkubernetesに持っていける。 今回はdocker環境でのビルドが目的なので、手っ取り早くrancher desktop使ってみる。 自分はlinuxのコマンドライン利用がdockerの入り口やったけど、普通はwindowsでwsl動かしといてその中でlinux稼働させて覚えてくんやろな。 前にdocker desktopが有償になって苦労してはったと思うけど、rancherに引っ越してる人も多いんかもな。 作成イメージ ⭐️印の箇所を作る。全体図デカなったな。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 <----------- M4 mac -------dev-> <--------------------- Windows11 pro VMware ----------------stg--> <-------- Google cloud ---prd--> +-macmini sequoia--------------+ +-local ubuntu24 linux -------+ +-local ubuntu24 linux--------+ +-GCE ubuntu24 linux----------+ | +-utm----------------------+ | | +-microk8s-------+ +-vmdk-+ | | +-docker---------+ +-vmdk-+ | | +-docker---------+ +--pv--+ | | | +-sequoia-------------+ | | | | +-Pod-------+ | | data | | | | +-container-+ | | data | | | | +-container-+ | | data | | | | | vscode/cyberduck | | | | | | Django | | | d1 | | | | | Django | | | d1 | | | | | Django | | | d1 | | | | | office/brew/rdp | | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +---------------------+ | | | | +-Pod-------+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | +-ubuntu24 x86 (準備中)+ | | | | | mariadb | | | d2 | | | | | mariadb | | | d2 | | | | | mariadb | | | d2 | | | | | ctr microk8s | | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | |+-container-+ | | | | | +-Pod-------+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | ||kubernetes | | | | <- | | | xrdp-ubu24| | | d3 | | <- | | | xrdp-ubu24| | | d3 | | <- | | | xrdp-ubu24| | | d3 | | | | |+-----------+ | | | <- | | +-----------+ | +------+ | <- | | +-----------+ | +------+ | <- | | +-----------+ | +------+ | | | |+-container-+ +/data+| | | <- | | | | <- | | | | <- | | +-container-+ | | | | ||Django | | d1 || | | | | | | | | | | | | | gitlab | | | | | |+-----------+ +-----+| | | | | | | | | | | | | +-----------+ | | | | |+-container-+ | || | | | | +-Pod-------+ | +------+ | | | +-container-+ | +------+ | | | +-container-+ | +------+ | | | ||mariadb | | d2 || | | | | | https | | | d4 | | | | | https | | | d4 | | | | | https | | | d4 | | | | |+-----------+ +-----+| | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | |+-container-+ | || | | | +----------------+ | | +----------------+ | | +----------------+ | | | ||xrdp-ubu24 | | d3 || | | +-----------------------------+ +-----------------------------+ +-----------------------------+ | | |+-----------+ +-----+| | | ||| | | |+-container-+ +-----+| | | +--smb share -----------------+ ||| | | ||https | | d4 || | | | windows smb share | ||| | | |+-----------+ +-----+| | | +-----------------------------+ ||| | | +---------------------+ | | ||| | +--------------------------+ | ||| | | ||| | +-rancher desktop ⭐️-------+ | ||| | | docker on lima | | ||| | | +-container-+ +------+ | | ||| | | | Django | | d1 | | | ||| | | +-----------+ +------+ | | ||| | | +-container-+ | | | | <-----------------------------------------------+|| | | | mariadb | | d2 | | | <------------------------------------------------+| | | +-----------+ +------+ | | <-------------------------------------------------+ | | +-container-+ | | | | | | | xrdp-ubu24| | d3 | | | | | +-----------+ +------+ | | | | +-container-+ +------+ | | | | | https | | d4 | | | | | +-----------+ +------+ | | | +--------------------------+ | | | | +-music----------+ | | | 8400(37GB) | | | +----------------+ | +------------------------------+ rancher desktopセットアップ 入れ方はこのへんで確認。 ...

macでmicrok8sを利用1-さらばminikube

hyperkitがdeprecateになったから qemuにしてみた ら、どっかんどっかん落ちる。 クラスタは動くけど、minikube cpとかdocker loadとかディスクの読み書きを重めにしたときによく落ちる。 なんやねん、使いものにならんなぁ。やり方悪いんかなぁ。 しゃあないからqemuやめてmicrok8sやってみる。 MicroK8s - Zero-ops Kubernetes for developers, edge and IoT microk8s.io ubuntuを提供してるcanonicalのプロダクトなんやな。 稼働のイメージ GWすぎてlocalとGCEのlinuxはubuntu22から24に切り替えた。xrdpのコンテナもおんなじ。 今回はminikube動いてた⭐️印の箇所をmicrok8sに変えて、hyperkitがmultipassに換わる。 もちろんクラスタとPod類は作り直して、永続化領域はバックアップ取ったものを展開しなおす。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 +-mac--------------------------+ | +-microk8s-------+ | | | ⭐️ | | | +----------------+ | | +-multipass-containerd-----+ | | | +-container-+ ⭐️| | | | | kubernetes| | | +-local ubuntu24 linux--------+ +-GCE ubuntu24 linux----------+ | | +-----------+ +-/data-+ | | | +-docker---------+ +-vmdk-+ | | +-docker---------+ +--pv--+ | | | +-container-+ | | | | | | +-container-+ | | data | | | | +-container-+ | | data | | | | | Django | | d1 | | | | | | Django | | | d1 | | | | | Django | | | d1 | | | | +-----------+ +-------+ | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-container-+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | | mariadb | | d2 | | | | | | mariadb | | | d2 | | | | | mariadb | | | d2 | | | | +-----------+ +-------+ | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-container-+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | | xrdp-ubu24| | d3 | | | <- | | | xrdp-ubu24| | | d3 | | <- | | | xrdp-ubu24| | | d3 | | | | +-----------+ +-------+ | | <- | | +-----------+ | +------+ | <- | | +-----------+ | +------+ | | | | | <- | | | | <- | | +-container-+ | | | | +-------+ | | | | | | | | | gitlab | | | | | | micro | | | | | | | | | +-----------+ | | | | +-container-+ | k8s | | | | | +-container-+ | | | | +-container-+ | | | | | https | | Ubuntu| | | | | | https | | | | | | https | | | | | +-----------+ +-------+ | | | | +-----------+ | | | | +-----------+ | | | +--------------------------+ | | +----------------+ | | +----------------+ | +------------------------------+ +-----------------------------+ +-----------------------------+ 途中で気づいたけど、multipassの内部にはdockerがなくなっててcontainerd/ctrになってた。 ...