docker
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 に進化して相当使いやすくなってるのはわかるんですね。 でも不便なものは不便。 コメン…
dockerfile 書いたら負けってのは解る。 でも、dockerfile を書かないと、dockerのボリュームの切り分けタイミングや、entrypoint が理解できないし。 dockerfile を書いたことがないと docker hub から pull してきても使い方がわからない。 dockerfile を…
debian ミラーって時々遅いので 自前のミラーを使って作ってるけど、それでも遅いので。 docker file が apt update 始まると apt ですごく時間が取られる 自分のミラーが見に行くところを変えていく deb http://debian-mirror.sakura.ne.jp/debian/ stretch…
docker build おそい。。。 Dockerfileを書くのが苦痛。ちょっと変えたらすぐに再構築が行われて、上手くキャッシュが効かないことが在る。 apt-update で待たされる。 apt-get update && apt upgrade && apt install がもう無理。1度や2度なら我慢するけ…