DRYな備忘録

Don't Repeat Yourself.

docker

Docker Desktop がクラッシュしたり、Engine Starting からずっと動かなかったりする【Apple M2】

問題 Docker Desktop (GUIアプリ)が起動中にクラッシュして落ちる 当然、この状態でcliで docker ps とかしても、「Engine not started」みたいなエラーを得る Docker Desktop が立ち上がったとて、Docker Engine のStartが一生終わらない tl;dr 下記のfor…

Elasticsearch: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

tl;dr Elasticsearchが動くコンテナの中に以下の環境変数をねじこめばよい。 参考: Running Elasticsearch 5 - Build Environment - CircleCI Discuss # これ # transport.host=localhost # # と、これ # bootstrap.system_call_filter=false # # docker run…

Dockerコンテナ同士のNFSのサーバ・クライアント疎通サンプル

サーバの起動 イメージはこれ → docker-nfs/server at master · otiai10/docker-nfs · GitHub % docker-machine create \ --driver amazonec2 \ --amazonec2-region ap-northeast-1 \ --amazonec2-security-group otiai10-test \ otiai10-server % eval $(do…

【メモ】【NFS】DockerコンテナをクライアントとするNFSの疎通確認

背景 Public/Privateネットワーク上にNFSサーバが立っており、AmazonLinuxクライアントからの疎通は確認できている 【AWS】EC2上にnfsサーバを構築する - DRYな備忘録 【AWS】EC2上にNFSサーバを構築する(最小要件) - DRYな備忘録 これを、Dockerコンテナ…

Tesseract-OCRをソースからコンパイルする(4.00.00dev)

背景 Tesseract-OCR 4.00.00devで動かない、というissueが来た。 github.com 前回記事 Tesseract-OCRのDockerコンテナ内でのビルド otiai10.hatenablog.com 今回の成果物 Dockerfile Docker Hub docker pull otiai10/tesseract:4.00.00dev FROM debian:stret…

(メモ)docker/machineのテストが落ちる問題

github.com bash-4.4$ DRIVER=virtualbox make test-integration test/integration/core/core-commands.bats test/integration/run-bats.sh test/integration/core/core-commands.bats INFO: Run the tests with B2D_CACHE=1 to avoid downloading the boot2…

Goのコードから複数の異なるDockerホストに対してコンテナの起動を実装する

2017/06/19 追記 エラーハンドリングにバグがあったので修正しました channelに何か流したとき、channelから取り出されないと流し込んだ側をブロックするのを忘れていました - errored <- err + go func() { + errored <- err + }() 前回までで以下のことを…

GoのコードからDockerコンテナへのディスクボリュームのマウントを実装する

前々回、前回 GoのコードからDockerコンテナの起動を実装する - DRYな備忘録 GoのコードからDockerイメージのpullを実装する(bufio.Scannerかわいい) - DRYな備忘録 で、GoのコードからDockerイメージのpullとDockerコンテナのrunを実装できたので、実践的…

GoのコードからDockerイメージのpullを実装する(bufio.Scannerかわいい)

前回エントリ↓でコードからのイメージのpullが動かなくてあっれおかしーなーとなって悔しかったのでリベンジです。 otiai10.hatenablog.com tl;dr client.ImagePullの返り値はio.ReadCloser型とerror型 このio.ReadCloserが、イメージのpullのprogressなどを…

GoのコードからDockerコンテナの起動を実装する

やったこと docker clientをGoのコードからimportする container作成 container起動 container停止(& 自動削除) 苦労したこと けっこうdocker(現moby)のコードの移り変わりが激しくて、vendorを固定するのが苦労した これとか できなかったこと コードか…

不要になったDockerコンテナの一括削除

docker ps - Docker Documentation % docker ps -a -q -f "status=exited" | xargs docker rm -a --all runningではないコンテナも含めすべて表示 -q --quiet container idのみ表示 -f --filter 色々でフィルタリングできる を、xargsでdocker rmの引数に投…

Docker for Macのインストールと複数VMをつくるまで

Docker for Mac vs. Docker Toolbox - Docker Documentation Get started with Docker for Mac - Docker Documentation 結局Docker for MacはDocker Toolboxと比べてどこが良いのか - Qiita Install Docker for Mac - Docker Documentation インストールのロ…

Dockerでホストのファイルをコンテナに持って行くメモ

というか、マウントである。 メモ まず入って出れることだけ確認。--rmで終了時にコンテナも抹消する。 % uname Darwin % docker run -i -t --rm library/ubuntu root@7f3902552705:/# uname Linux root@7f3902552705:/# exit exit % docker ps -a CONTAINER…

Dockerで雑に使い捨て開発環境つくる個人的なメモ

たとえば、Macでdocker-machine使ってて、debianの環境が手っ取り早くほしい。 % docker-machine create -d virtualbox foobar % eval $(docker-machine env foobar) % docker run -i -t --rm library/debian -i -t この端末のstdin/stdoutでsshする --rm コ…

docker-composeでEC2にデプロイしたい

問題 EC2上でdocker containerを立てて運用するようなサービス の、デプロイをdocker-composeでやりたい tl;dr Amazon Web Service - docker すべてここに書いてあった。docker-machineのdriverをamazonec2としてcreateすれば、あとはいつものdocker-compose…

docker-composeで Unknown MySQL server host 'localhost' とかなる現象

問題 だいたいどんなDBのイメージ使ってても、同じdocker-composeでサーバアプリケーションも一緒に動かそうとすると、いかのように叱られることがよくある。 Unknown MySQL server host 'localhost' べつにMySQLに限らない。MongoDBでもRedisでも、ありがち…

HerokuにDockerで動くアプリケーション(Go)をデプロイする

追記(2016/12/22) 任意のパッケージがインストールされた環境をHerokuにつくりたい、という目的でDockerを選択したけれど、Dockerfileに書かれているinstallコマンドは有効に動かない、みたいな情報を得ました。で、どうやらさいきんはbuildpackをうまいこ…

Linuxサーバ上でdocker-composeを使う

ゴール MacOSXで、docker-machineでvirtualbox VMをつくって、そこをdockerホストとして、docker-composeを使って複数種類のコンテナをオーケストレーションしている じゃあ、もともとdockerが使える環境にしているLinuxで、docker-composeを使って複数種類…

docker-machine envがこける

問題 docker-machine envすると、 There was an error validating certificates for host ~ と叱られる Error checking TLS connection: Error checking and/or regenerating the certs: There was an error validating certificates for host "192.168.99.1…

docker-compose内でmongodbがFailed to connect to a master node at 0.0.0.0:27017となる

問題 docker-compose.yml mongodb: container_name: mongodb image: mongo:3.2.0 ports: - "27017:27017" myapp: container_name: myapp build: . dockerfile: Dockerfile links: - mongodb # まずはもちろんこれが必要 main.rb(抜粋) require 'mongo_mapp…

docker-compose buildでbundle installがCould not fetch specs from rubygems.orgとなる

問題 Mac上でdocker-machineでVMを立て、そこに向けてdocker-composeを華麗に決める % docker-compose build # 略 Step 5 : RUN bundle install ---> Running in e8c4e026277a # 略 Fetching source index from https://rubygems.org/ Could not fetch specs…

Elasticsearchの2.0にキャッチアップしたいんですが、Dockerで分離したい。Macで

背景 みんなだいすきElasticsearchがいつのまにか2.0になってた これを叩いていろいろためしたい だけど生ローカルで動いているElasticsearchがあり、これはカジュアルにAPI変えたくない Dockerイメージあるし、docker-machineでホストごと分離するのがよさ…

Debian wheezyで、はじめてのDocker

ちょっと古いけど、これがとても参考になります docker を debian wheezy に install する - Qiita つまったとこ There is no public key available for the following key IDs: apt-get update時にW: There is no public key available for the following k…

MacでDocker動かすまで

Dockerとは // 割愛 あとで書く 参考にした記事 Docker を Mac で使ってみた(Nodeアプリ例) ::ハブろぐ MacにVirtualBoxをインストールする方法 | Windows on Mac BootCampを使って MacでWindowsを動かそう How do you list containers in Docker.io? - St…