それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

docker

joplin サーバーをインストールする。

joplin サーバーのインストール Created: 2023.09.21 02:36 Updated: 2023.11.23 23:52 Combined: 2023.11.23 23:52 joplin サーバーのインストールで高速化するらしい Joplinサーバーを作らなくても、NextCloudで同期できてるし、問題ないと思ってたが、次…

dockerで終了したubuntuプロセスを再開する。(docker start )

docker でubuntuを起動した場合 なお、実験にはdocker のかわりに互換ソフトであるpodman を用いた。 docker / ubuntu でbashを起動する docker run -it ubuntu bash 起動例 [root@docker-host ~]# podman run -it ubuntu bash root@4d6a491bb9ab:/# cat /et…

lxc内部 でdocker を動かしたときのメモ。

Ubuntu のLXCでdockerを動かしたときのメモ UbuntuのLXCで ubuntuを動かしてその中で、dockerを動かした。 lxc ubuntuを作る 最初に lxc のストレージを作る lxc storage create bt01 btrfs 作ったストレージ内部にUbuntuを作る lxc launch ubuntu:22.04 doc…

Arm(aarch64)で mailcow-dockernized を動かした。

Arm(aarch64)で mailcow-dockernized を動かした。 mailcow とは rspamd/virtual hosting メール / imaps / smtp / WEBメール / ip-ban の必要なものがワンセットで、docker compose だけで簡単にメール環境を作ることができる。 arm 版 Raspiやオラクルクラ…

docker のボリュームのサーバー間移動

docker ボリュームをサーバ間で移動する ただrsyncすれば問題なく動く。dockerコマンドは使いません。直接取り出せば大丈夫です。 ホスト側にログインする。docker の内部には一切ログインしない。 コマンド例 takuya$ ssh takuya@docker-host takuya@docker…

mailcowにcertbot の証明書を使ってもらう。

mailcow には lets encrypt (LE) が内蔵だが、オフにしたい。 mailcow に添付されてる LE acme クライアントは、port 80/443 (http/https)で ドメインをVerifyする。 うちの環境では、狙われやすいメール環境にIP接続制限を掛けていて、海外IPからの接続を拒…

docker でタイムゾーンを有効にする

docker でタイムゾーンを有効にするには、環境変数 TZ を与えればいい事が多い。 docker run -e TZ=Asia/Tokyo Dockerfile FROM ubuntu:20.04 ENV DEBCONF_NOWARNINGS=yes ENV TZ Asia/Tokyo RUN echo "Apt Config" && \ echo "APT::Install-Suggests 0;\nAP…

redmineをdockerで起動してインストールして利用する。

redmineを使ってみたくなった。 ガントチャートが使いたいくなった。代替品に良好な製品もない。Redmineを今更ながら使うことにした。 インストールして使ってみると、わりとキレイで良き。 github のIssueもあるし、gitlabで時間管理もできるのだけど、Redm…

dockerのコンテナにホストssh経由で接続する

リモートのdocker のコンテナへSSHで接続する 作業マシンは、macOS/Windowsで、docker はリモートのUbuntu Serverの中。なんてことが多いと思います。 次のような接続。 PC ---<internet>---UbuntuServer--<dockerio>---container 直接 container に入りたくないですか? ssh で</dockerio></internet>…

multipass のubuntu で dockerd を動かして外部から接続できるようにする。

multipass に docker を入れる。 multipass を windowsでインストールすると、HyperVの仮想マシンで起動します。 choco install multipass windows の hyper-V で起動したubuntu に docker を入れる。 sudo snap install docker mutipass な ubuntu の docke…

別ホストのdockerをTCP経由で操作する

docker は自PCに入れなくても動作します。 docker コマンドの接続は次のようになっています。 docker-cli ---- fd(sock) --- docker-host docker は api 経由で動作しているので、TCP経由でも接続できます。 docker-cli ---- tcp(sock) --- docker-host tcp …

github にpush してghcr.io に docker push する。

github にpush したらghcr.io にdocker push する。 概要 github に push したタイミングで、github actionsを起動して、docker ビルドをして、docker イメージを github コンテナ・レジストリにpush したい 手順 github のレポジトリを用意する github で a…

Ubuntuでmysql(/var/lib/mysql)を初期化して初期パスワード生成

mysql をリセットする apt でインストールしたmysql のデータを全消しして、初期化し直す。 mysql を消したくなるとき。 何らかの作業をしていて、いったんmysql をサクッと削除して作り直したい時がある。 しかし、apt はしたくない。 sudo apt purge mysql…

potainer でユーザとチーム毎に管理できるホスト(endpoint)を設定する。

ユーザ毎にアクセス権(利用可不可)設定する。 Portainer は「Role単位の詳細権限」については、Bussiness版が必要なのだが、 チーム(グループ)とユーザ毎に、このDockerホストを許可する許可しないと設定できる。 少しわかりにくかったのでメモ。 Endpoi…

docker別ホストから接続、管理SockをTCP経由許可して利用する。

docker の管理を別ホストから行いたい ほとんどの人はDockerが動いているマシンへ SSHで接続してるともう。 ssh 経由で docker を使う場合 作業用PC ----<SSH>---- docker-host リモートのDockerがインストールされたマシン中でdocker コマンドを叩いている場合 </ssh>…

docker で systemdが動く ubuntu イメージを作って遊ぶ-その2

前回、systemd を動かした。 前回の続き docker の起動コマンドを /sbin/init にすれば、 docker の ubuntu でも systemdを使って遊べることがわかった。 単純な作業だったので、dockerfile でイメージ化して遊ぶ dockerfileを作って遊ぶ FROM ubuntu:20.04 …

dockerで systemd が動く ubuntu を作って遊ぶ

はじめに docker ではシングル・プロセスが前提なので、複数のプロセスを起動するべきではない。 それでも、ちょっと動かしてみたいと思うのが、遊びゴコロってやつ。docker で systemd を動かしてみたらどうなるのか。 今回は、Raspi4 の高速マシンがあるか…

raspi ubuntu に docker をインストール

raspi 8GB でdocker を入れて遊ぶ raspi 8GB が手元にあるので、docker とか snap とか lxc とか動かして遊ぶ。 raspbian で動かすとレポジトリで手こずるので、最初から aarch64 用にコンパイルされた ubuntu をインストールした. インストール後のraspberr…

WSL (v1)からdocker を使う

WSL (v1)からdocker を使う WSL から Docker を使うには、TCPでローカルホストに接続するのが楽ちん docker ( windows ) のインストール まずは、Windows にDocker-Desktop をインストール choco install docker-desktop port 2575 を有効にする。 インスト…

docker exec で root になる。/ docker exec を指定したユーザーで実行する

docker exec しても root になるとは限らない。 dockerのインスタンスによっては、Dockerfile の記述によっては、docker exec がユーザー root で実行できないことがある。 docker exec を強制的に root にする uid をオプションに付けたら、強制的にrootユ…

ロケール(地域言語)を設定する(dpkg-reconfigureの対話ダイアログなし)

言語・地域のロケール設定がめんどくさい。 LXCで新規インスタンスを起動したり、dockerfile や インストールスクリプトを書いていると、ロケール設定がめんどくさい。手作業でやっていると、dpkg-reconfigure を使えばいいんですけど、不便。起動までコピペ…

docker のイメージやコンテナを削除する. まとめて全削除

docker でストレージが圧迫される docker build とか docker hub でイメージ取得してるとありがち。ストレージ圧迫される。 全部のコンテナを削除する docker rm $( docker ps -a -q ) 全部のイメージを削除する docker image rm $( docker images -q ) 依存…

dockerがapt失敗する - dns の設定を見直してみる。

Docker で起動したUbuntuがネットに出られない。 docker コンテナ側からインターネットへのネットワークの疎通を確認する。 今回は、なぜか、通信ができなかったので、エラーになる。いきなり発生したので原因を探っておく。 疎通確認 docker run busybox pi…

pip インストールを自動でやる。

pip を自動で実行すると Yes / No を聞かれる DockerileでCOPYしたシェルスクリプトからpip をインストールしてたら、割とめんどくさい事になった。 Proceed (y/n)? Exception: Traceback (most recent call last): (略 return ask('Proceed (y/n)? ', ('y',…

dockerでターミナルが変な折り返しで辛い現象を何とか解決する

docker でターミナルの折返しがキツイ Dockerでbash などの ttyで接続すると、横幅サイズがおかしくなるとの、折返し時に、妙なイチに折り返すのでキツイ。 github のissue スレ見てるとエラーの原因は docker exec -it を実行したときに、 /exec/${EXEC-ID}…

dockerのexpose のポートをlocalhostに限定する。

docker のポートのIPアドレスを限定したい。 expose したポートを、bind するときに、よく見る例がコレ docker run -p 80:80 ... コレだと、0.0.0.0:80 にマッピングされる。グローバルアドレスにマッピングしてしまうのですよね。ちょっと先行き不安。 ロー…

docker の mysql に sql を流し込んでデータベースを作ったり初期データをいれる

docker のmysql にデータを流し込みたい。 docker のmysql にデータ流し込む docker exec -i 49723f3d7ed1 mysql -uroot -pPASWORD database_name < data.sql exec のオプションに -it ではなく tty なしで -i だけでいい。 データベースにデータを投入する…

docker-composeの管理が面倒なのでerb と makefileにした

docker-compose.yml が面倒くさい。 docker-compose は良く出来てるんだけど、環境変数だとか環境設定がめんどくさくないですか? dockerfile から docker-compose.yml に進化して相当使いやすくなってるのはわかるんですね。 でも不便なものは不便。 コメン…

Dockerfileを作って試すときのコマンドが長いのでmakefileにした

dockerfile 書いたら負けってのは解る。 でも、dockerfile を書かないと、dockerのボリュームの切り分けタイミングや、entrypoint が理解できないし。 dockerfile を書いたことがないと docker hub から pull してきても使い方がわからない。 dockerfile を…

debian ミラーをやめてさくらインターネットのミラーを頼る

debian ミラーって時々遅いので 自前のミラーを使って作ってるけど、それでも遅いので。 docker file が apt update 始まると apt ですごく時間が取られる 自分のミラーが見に行くところを変えていく deb http://debian-mirror.sakura.ne.jp/debian/ stretch…