AIX、UNIX、Linux, Containercontainer, docker, docker-compose, https, Let's Encrypt, reverse proxy, traefik

以前から一部の環境にTraefik v1を使用してcontainer環境にLet’s Encryptを提供していましたが、Traefikの2.0系が2019年9月17日にGAリリースされたので早速環境を移行することにしました。

呟き

実はdocker pullした際にtagがlatestになっていたため、v2へ予期せぬタイミングで移行してしまい、うまく動作しなくなったと焦っていたのは内緒です。

2019-06-24 10:49:52AIX、UNIX、Linux, Containercontainer, docker, ipsec, iptables, linux

vanveenjf-1136697-unsplash
photo by unsplash.

頭悪い内容の記事で申し訳ありません。

とあるdockerホスト側にIPsecトンネルを張っていたのですが、Container側からの通信をdockerホスト側のIPsecトンネルに流すにはどうすれば良いのか悩んだので記事にしておきます。知ってる人には簡単なことかもしれませんが・・・

2019-06-06 10:09:56Container, zabbixAlpine, container, docker, font, zabbix, フォント, 文字化け, 日本語

皆様、インフラの監視頑張っておりますでしょうか。nagios使っていたり、zabbixを使っていたり、datadogなどを使っていたりするのでしょうか。自分のところは伝統的にzabbixを使用しています。

さらにうちではdockerの上に公式のcontainerイメージによるzabbixを構築し、それを使用しています。

https://github.com/zabbix/zabbix-docker

公式のcontainerイメージについては、日本語環境で使用する場合、そのままではグラフにおいて豆腐と呼ばれる状態で表示されることになり、フォントの置き換えが必要です。このことについてはWeb各所でそれ関係の記事を見かけることがあります。

http://www.zabbix.jp/node/4663
https://qiita.com/sikkim/items/5533dd55f28f2cc41cdd

が、alpineイメージのtag 4.2.2については設定が変わってしまったのか、以前までのフォントの置き換えでは日本語が有効になりません。

2019-05-31 10:47:09AIX、UNIX、Linux, ContainerAlpine, botan, build, container, DHCP, DHCPd, docker, isc, Kea, log4cplus

気が付いたらISCのDHCPv4/v6 serverなKeaの1.6.0-betaがリリースされていました。まぁまだ開発版の扱いですが、色々と新機能が増えそうです。

試してみようかとbuildしようとしたんですがちょっと手間取りました。

2019-04-19 17:58:26AIX、UNIX、Linux, Containercompose, container, docker, limit, mem_limit, memory, メモリ, 制限

もう最近は何でもDockerを始めとしたcontainerに頼ることも多くなりましたが、リソースの制限を使用と思った時、docker composeを使用していると実は色々と条件があったらしいのでメモ。

gearbest

2019-04-01 09:59:33AIX、UNIX、Linux, Containercontainer, docker, docker-compose, https, Let's Encrypt, reverse proxy, traefik

Screenshot_2019-03-30 Support wildcard certificates with ACMEv2 · Issue #319 · JrCs docker-letsencrypt-nginx-proxy-companion

docker環境で、HTTPS対応のリバースプロキシ環境を利用する場合、いくつか選択肢があると思います。

自分は今まで以下のNginxを使用しLet’s EncryptによるHTTPSプロキシを作るというものを利用していました。

JrCs/docker-letsencrypt-nginx-proxy-companion: LetsEncrypt companion container for nginx-proxy

しかし、最近はk8s (kubernetes)などが流行していることもあり、そちらでよく利用されるTraefikでも、リバースプロキシとしての機能はもちろん、Let’s Encrypt機能も使えるということを知ってから、こちらを利用してみることにしました。

CAUTION

この記事執筆時点ではv1系での設定になります。

2019-03-01 09:22:10AIX、UNIX、Linux, ARM, Containerarm, container, docker, k3s, k8s, kubernetes, rancher

20190301090311215

最近、もっぱらインフラ関連はkubernetesで盛り上がっていますが、その中でも大きな役割を果たしている企業の一つであるRancher Labsから、必要機能に絞ったうえで軽量化したk8s環境を構築できる、k3sがリリースされました。

https://mag.osdn.jp/19/02/28/160000
https://rancher.com/blog/2019/2019-02-26-introducing-k3s-the-lightweight-kubernetes-distribution-built-for-the-edge/

わざわざ”Optimized for ARM”と書かれている点や、Arm向けにbinaryが用意されていますので、自分の手元の環境のArm板で導入してみました。

2019-02-08 10:48:12AIX、UNIX、Linux, Containerarm, container, docker, swarm

docker-whales
Screenshot_2019-02-08_e_maji


何周遅れなのかわかりませんが、自宅の環境をDocker swarmに置き換えることにしました。

今さら手を出すのであれば、Kubernetes (k8s) の方が良いのでしょうが、とりあえず管理方法などを学ぶ点でこちらにしました。
※イラストが雑くてすみません。

2019-02-01 10:48:31AIX、UNIX、Linux, Containerbuildkit, container, docker, Temporary error, time out, try again later

rye-jessen-785346-unsplash

以前に上記なような記事を書いており、そのときからBuildKitの恩恵に預かっていたのですが、今日docker buildしようとしたところ、パッケージアップデートの際に名前解決に失敗する現象に遭遇しました。

この問題について

docker buildの際に名前解決に失敗する件は、docker界隈では有名な感じらしく、以下のようなissueがあったりしますし、google検索を行ってもちらほらと見受けられます。

2019-01-15 10:45:12AIX、UNIX、Linux, Containerbuild, clang, container, docker, gcc, LDFLAGS, LLD

ruben-bagues-499737-unsplash

dockerでcontainerイメージを作成する際に、内部のプログラムを使用するときは基本的にgnu gcc/g++を使用すると思います。

基本中の基本だと思うので、特別な要件が無ければ他のコンパイラを使用することはないと思います

が、最近の流れからどうなんだろうなぁということで、clangを使用するようにしてみました。