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

Dockerでmariadbバージョンアップ(詳細編5-google driveからlocal-linuxへ永続化領域をコピーして利用)

概要編から参照されるための詳細編5。 google driveからlocal-linuxへ永続化領域をコピーして利用 google driveにあるDocker.zipの中からmariadbの永続化領域だけを展開して、mariadb10.11に使わせる。 google driveからlocal-linuxへのコピーは自動じゃなく手動。 サイズとか日付とか、ダウンロードの様子見ながらやりたいから。 gcpで入れたのをcyberduckでダウンロード。 さて、ここからlocal-linuxの永続化領域へコピーし、データベース上の開発領域nariDB_Djangoを上書きする。 手動でダウンロードしたもの 置き場は決まってる。 1 2 3 4 5 6 7 8 9 10 11 $ ll 合計 8.7G drwxrwxr-x 2 nari nari 4.0K 2023-01-04 06:46:13 ./ drwxrwxr-x 14 nari nari 4.0K 2022-11-21 05:55:07 ../ -rwxr--r-- 1 nari nari 3.2G 2023-03-18 08:24:07 Docker.zip* -rwxr--r-- 1 nari nari 21M 2023-03-18 08:18:32 gvis_conf.zip* -rwxr--r-- 1 nari nari 1.4M 2023-03-18 08:18:32 log.zip* -rwxr--r-- 1 nari nari 5.5G 2023-03-18 08:28:35 nariDocs.zip* -rwxr--r-- 1 nari nari 15M 2023-03-18 08:18:33 script.zip* nari@nafslinux-ubu22:/nari/nariHTTP/configBackup/ $ unzipして必要なものだけを切り出す windows環境からlocal-linuxの操作やってるので、デスクトップにショートカット作ってバッチ処理経由で展開処理を動かしてる。 ...

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

ubuntu20をubuntu22へ切り替えしてったんやけど、dockerコンテナのもやりたいなって思ったのでやってみた。 ubuntu22の親ホストで動くdockerコンテナとしてxrdpd稼働させて、リモートデスクトップ接続可能なubuntu22コンテナを作る。 その後、 ubuntu24 での稼働に切り替えた。 結論 dockerhubにあったxrdpコンテナのdockerfileをベースにして自分用に改造し、ubuntu22.04LTSにしたxrdpコンテナが起動できて、windowsから接続できるようになった。 macからもつないで使える(妄想)。 まずは、ビルドして起動した直後。 他にもdjangoやらldapsサーバやらredhat8/9クローンを動かしてる。 GUI含むので、dockerfile使ってビルドするのは20分ぐらい待つ。 ssd使うようにしても、それなりに時間はかかる。 リモートデスクトップ接続して、マウントした永続化領域を開いたとこ。 ubuntu22のJammy jellyfishってなってるし、右上の日付表示も日本語で、タイムゾーンもJSTになってる。 自分向けお決まりの入力をaliasに登録したところ。 source .bashrcってするか、ログインしなおしたらaliasが有効になる。 キーボードレイアウトを日本語にするため「設定マネージャー」を起動してみる。 GUIで見えてるポップアップツリーも、めっちゃ日本語表示してくれてる。 レイアウト変更は「japanese」って表記じゃなくて、いちばん下のほうにある「日本語」ってのを選ぶ。 これでレイアウトを「OADG109A」にして「Generic105-KEY PC」ってキーボード選ぶと「@」とか「:」が日本語レイアウトで使える(特にコロンが入力できないとvimでツライ)。 dockerコンテナの再起動したらlibreofficeの中でもちゃんと記号使えた。 コマンドラインで、パネルの日時表示設定とか日本語キーボード設定やらなあかんのかなぁって思ってたらスンナリ使えるようになった。 あとはベース機能を ubuntuで最初にaptした内容 を使ってvscodeとchrome入れたらこうなった。 これでdjangoのソースいじったり、ローカル環境で必要なときにテストできる。 ついでにlibre officeも最後に入れた。 docker-composeには、こう書いた。 dockerhubにあったxrdpコンテナを扱ってるサイトでベースになるものを引き当てて、ubuntu20で使ってる記述をベースに★箇所について改造して利用。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ### git clone https://github.com/danchitnis/container-xrdp.git ### cd container-xrdp ### ### docker build -f ./ubuntu-xfce/Dockerfile -t ubu:22gvis . ### docker run -it -v /docker/nariDockerDat/cl_ubun22:/gvis -p 33389:3389 ubu:22gvis nari xxxxxxxx yes cl_ubu22: image: ubu:22gvis privileged: true ★お決まりの記述 hostname: clubu22 ports: - "33389:3389" ★windowsからは33389ポートで接続させる volumes: - ./nariDockerDat/cl_ubun22:/gvis ★永続化領域をつないで使う tty: true shm_size: 512m ★この記述がないとchromeでページ表示の際にエラー出る depends_on: - "sv_ldap-admin" ★このコンテナより後に起動して欲しいので書いた ubuntu20の頃 yama07さんが作っておられてて、ubuntu20の頃はこれ使わせてもらってた。 ...

Dockerでubuntu22のリモートデスクトップ接続できるコンテナ(Dockerfile追記とマルチステージビルド)

dockerコンテナでxrdpするものをローカルlinuxとmacの中のminikubeとgoogle cloud(GCP)では日常的に使ってる。 GCPの中ではvscode使って、コンテナ稼働させてるgitlabにpythonソースとか、運用スクリプトとかを更新して保管してる。 普段はローカルのmacとwindowsのofficeあるから、GCPでexcelとかpdfとか確認するのはほんの少し。 そのためだけにwindowsの仮想マシン使うのはちょっとなぁ。 GCPの中でwindowsホストを使うと、ライセンス料とかいるから高めになる。 それやったらxrdpコンテナ使ってたほうがええ。 xrdpコンテナにはapt/apt-getしていろいろ入れたいから、全部やないけど30個ぐらいの 自分のメモ 見ながら設定してる。 dockerイメージ大きくなってほしくないけど、たぶん増えてく。 ときどきコンテナ作り直すことあるから、毎回の再設定が面倒になってきた。 ブラウザの表示色合い設定とか、デスクトップの壁紙設定とか手動でやらなアカンもんもあるけど、コンテナ作り直して全部手動でapt-getとかalias設定やるのは苦しいから、書いて設定できるものはdockerfileに追記した。 元のファイル 元のファイルはこんなの。 danchitnisさんのものを流用させてもらってる。 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 51 52 53 54 55 56 57 58 59 # https://github.com/danchitnis/container-xrdp FROM ubuntu:22.04 ENV DEBIAN_FRONTEND noninteractive RUN apt-get -y update RUN apt-get -y upgrade RUN apt-get install -y \ xfce4 \ xfce4-clipman-plugin \ xfce4-cpugraph-plugin \ xfce4-netload-plugin \ xfce4-screenshooter \ xfce4-taskmanager \ xfce4-terminal \ xfce4-xkb-plugin RUN apt-get install -y \ sudo \ wget \ xorgxrdp \ xrdp \ tzdata \ ibus \ ibus-mozc \ language-pack-ja-base \ language-pack-ja \ fonts-noto-cjk \ fonts-noto-color-emoji && \ apt remove -y light-locker xscreensaver && \ apt autoremove -y && \ rm -rf /var/cache/apt /var/lib/apt/lists RUN locale-gen ja_JP.UTF-8 \ && echo 'LC_ALL=ja_JP.UTF-8' > /etc/default/locale \ && echo 'LANG=ja_JP.UTF-8' >> /etc/default/locale ENV LANG=ja_JP.UTF-8 \ LANGUAGE=ja_JP:ja \ LC_ALL=ja_JP.UTF-8 \ TZ=Asia/Tokyo RUN cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime \ && echo 'Asia/Tokyo' > /etc/timezone COPY ./build/ubuntu-run.sh /usr/bin/ RUN mv /usr/bin/ubuntu-run.sh /usr/bin/run.sh RUN chmod +x /usr/bin/run.sh # https://github.com/danielguerra69/ubuntu-xrdp/blob/master/Dockerfile RUN mkdir /var/run/dbus && \ cp /etc/X11/xrdp/xorg.conf /etc/X11 && \ sed -i "s/console/anybody/g" /etc/X11/Xwrapper.config && \ sed -i "s/xrdp\/xorg/xorg/g" /etc/xrdp/sesman.ini && \ echo "xfce4-session" >> /etc/skel/.Xsession # Docker config EXPOSE 3389 ENTRYPOINT ["/usr/bin/run.sh"] 追記した内容 dockerイメージのサイズは5GBぐらいまでなら、ええかと思ってる。 libreofficeとかvscode使うし。 ...

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のタグがあることを確認しとく。 ...

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セットアップ 入れ方はこのへんで確認。 ...