docker
docker build で apt installを高速化 docker build で毎回ダウンロードが公式レポジトリから行われるのが、心苦しい。 無駄な通信が発生している。そして何より遅い ビルド例 export APT_HTTP_PROXY=http://192.168.2.21:3142 docker build --build-arg APT…
docker で postfix を作る debian を起動する postfix をインストールする postfix でメールリレーを作る これらをDockerで起動する 必要な部分を環境変数にする。 最初に、postfix設定の実験用の仮想マシンを準備する lxc image list images:'debian/12' 最…
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 のかわりに互換ソフトであるpodman を用いた。 docker / ubuntu でbashを起動する docker run -it ubuntu bash 起動例 [root@docker-host ~]# podman run -it ubuntu bash root@4d6a491bb9ab:/# cat /et…
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 を動かした。 mailcow とは rspamd/virtual hosting メール / imaps / smtp / WEBメール / ip-ban の必要なものがワンセットで、docker compose だけで簡単にメール環境を作ることができる。 arm 版 Raspiやオラクルクラ…
docker ボリュームをサーバ間で移動する ただrsyncすれば問題なく動く。dockerコマンドは使いません。直接取り出せば大丈夫です。 ホスト側にログインする。docker の内部には一切ログインしない。 コマンド例 takuya$ ssh takuya@docker-host takuya@docker…
mailcow には lets encrypt (LE) が内蔵だが、オフにしたい。 mailcow に添付されてる LE acme クライアントは、port 80/443 (http/https)で ドメインをVerifyする。 うちの環境では、狙われやすいメール環境にIP接続制限を掛けていて、海外IPからの接続を拒…
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を使ってみたくなった。 ガントチャートが使いたいくなった。代替品に良好な製品もない。Redmineを今更ながら使うことにした。 インストールして使ってみると、わりとキレイで良き。 github のIssueもあるし、gitlabで時間管理もできるのだけど、Redm…
リモートのdocker のコンテナへSSHで接続する 作業マシンは、macOS/Windowsで、docker はリモートのUbuntu Serverの中。なんてことが多いと思います。 次のような接続。 PC ---<internet>---UbuntuServer--<dockerio>---container 直接 container に入りたくないですか? ssh で</dockerio></internet>…
multipass に docker を入れる。 multipass を windowsでインストールすると、HyperVの仮想マシンで起動します。 choco install multipass windows の hyper-V で起動したubuntu に docker を入れる。 sudo snap install docker mutipass な ubuntu の docke…
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 したタイミングで、github actionsを起動して、docker ビルドをして、docker イメージを github コンテナ・レジストリにpush したい 手順 github のレポジトリを用意する github で a…
mysql をリセットする apt でインストールしたmysql のデータを全消しして、初期化し直す。 mysql を消したくなるとき。 何らかの作業をしていて、いったんmysql をサクッと削除して作り直したい時がある。 しかし、apt はしたくない。 sudo apt purge mysql…
ユーザ毎にアクセス権(利用可不可)設定する。 Portainer は「Role単位の詳細権限」については、Bussiness版が必要なのだが、 チーム(グループ)とユーザ毎に、このDockerホストを許可する許可しないと設定できる。 少しわかりにくかったのでメモ。 Endpoi…
docker の管理を別ホストから行いたい ほとんどの人はDockerが動いているマシンへ SSHで接続してるともう。 ssh 経由で docker を使う場合 作業用PC ----<SSH>---- docker-host リモートのDockerがインストールされたマシン中でdocker コマンドを叩いている場合 </ssh>…
前回、systemd を動かした。 前回の続き docker の起動コマンドを /sbin/init にすれば、 docker の ubuntu でも systemdを使って遊べることがわかった。 単純な作業だったので、dockerfile でイメージ化して遊ぶ dockerfileを作って遊ぶ FROM ubuntu:20.04 …
はじめに docker ではシングル・プロセスが前提なので、複数のプロセスを起動するべきではない。 それでも、ちょっと動かしてみたいと思うのが、遊びゴコロってやつ。docker で systemd を動かしてみたらどうなるのか。 今回は、Raspi4 の高速マシンがあるか…
raspi 8GB でdocker を入れて遊ぶ raspi 8GB が手元にあるので、docker とか snap とか lxc とか動かして遊ぶ。 raspbian で動かすとレポジトリで手こずるので、最初から aarch64 用にコンパイルされた ubuntu をインストールした. インストール後のraspberr…
WSL (v1)からdocker を使う WSL から Docker を使うには、TCPでローカルホストに接続するのが楽ちん docker ( windows ) のインストール まずは、Windows にDocker-Desktop をインストール choco install docker-desktop port 2575 を有効にする。 インスト…
docker exec しても root になるとは限らない。 dockerのインスタンスによっては、Dockerfile の記述によっては、docker exec がユーザー root で実行できないことがある。 docker exec を強制的に root にする uid をオプションに付けたら、強制的にrootユ…
言語・地域のロケール設定がめんどくさい。 LXCで新規インスタンスを起動したり、dockerfile や インストールスクリプトを書いていると、ロケール設定がめんどくさい。手作業でやっていると、dpkg-reconfigure を使えばいいんですけど、不便。起動までコピペ…
docker でストレージが圧迫される docker build とか docker hub でイメージ取得してるとありがち。ストレージ圧迫される。 全部のコンテナを削除する docker rm $( docker ps -a -q ) 全部のイメージを削除する docker image rm $( docker images -q ) 依存…
Docker で起動したUbuntuがネットに出られない。 docker コンテナ側からインターネットへのネットワークの疎通を確認する。 今回は、なぜか、通信ができなかったので、エラーになる。いきなり発生したので原因を探っておく。 疎通確認 docker run busybox pi…
pip を自動で実行すると Yes / No を聞かれる DockerileでCOPYしたシェルスクリプトからpip をインストールしてたら、割とめんどくさい事になった。 Proceed (y/n)? Exception: Traceback (most recent call last): (略 return ask('Proceed (y/n)? ', ('y',…
docker でターミナルの折返しがキツイ Dockerでbash などの ttyで接続すると、横幅サイズがおかしくなるとの、折返し時に、妙なイチに折り返すのでキツイ。 github のissue スレ見てるとエラーの原因は docker exec -it を実行したときに、 /exec/${EXEC-ID}…
docker のポートのIPアドレスを限定したい。 expose したポートを、bind するときに、よく見る例がコレ docker run -p 80:80 ... コレだと、0.0.0.0:80 にマッピングされる。グローバルアドレスにマッピングしてしまうのですよね。ちょっと先行き不安。 ロー…
docker のmysql にデータを流し込みたい。 docker のmysql にデータ流し込む docker exec -i 49723f3d7ed1 mysql -uroot -pPASWORD database_name < data.sql exec のオプションに -it ではなく tty なしで -i だけでいい。 データベースにデータを投入する…
docker-compose.yml が面倒くさい。 docker-compose は良く出来てるんだけど、環境変数だとか環境設定がめんどくさくないですか? dockerfile から docker-compose.yml に進化して相当使いやすくなってるのはわかるんですね。 でも不便なものは不便。 コメン…