latest)やりたかったこと他のDBサーバからデータを持って来てダンプファイルを作りたかった。動いたJenkinsfile設定.pgpassを任意のパス(ここではhostの/ci/app/hoge)に置き、そのパスをvオプションでマウント、さらにマウントしたファイル(ここでは/root/.pgpass)をeオプションで指定。}}動かなかった設定.pgpassを任意のパス(ここではhostの/ci/app/hoge)に置き、そのパスをホームディレクトリとして環境変数で指定。HOME=/home/ciuser'postgresコンテナ内の環境変数にはHOMEが反映されているが.pgpassは読み込まれなかった。getpwuidで実行ユーザ(uid1000)で環境変数ではなく/etc/passwdからホームを取得しようとするpostgresコンテナにはuid1000のユーザはいないからホームディレクトリが取得できない(echoしてみたら/で表示されてはいた)/には.pgpassが無いからエラーという流れと思うが調査は途中でやめた。wpepeaawscliを使えるJenkinsの(Docker)agentコメントを残すJenkinsのpipelineからawscliを使えるエージェントを呼び出して使おうと思ったら結構てまどったのでそのメモ。v18.06.1-ceawscliの入ったイメージこちらdockerfileにあるユーザ名は任意で良いけれども、uid/gidはDockerのユーザが基本的に1000なので1000にあわせておかないとややこしい。}}agentに作ったイメージを指定。hostにawsの認証ファイルを配置しておき、認証情報ファイルのあるディレクトリ(.aws)の親ディレクトリをマウント(/home/hoge/.awsとあるとすると/home/hogeをマウント)。環境変数等で指定してもOKのはずだが試してはいない。ハマリポイントとしてjenkinsのagentとして動かす場合は明示的にホームディレクトリを(環境変数で)指定しないと”/”がホームディレクトリになった。明示的にホームを指定するのでawscliのイメージで指定したユーザの/home/ciuserに拘らず任意の名前でOKのはず。(なのでawscliのユーザ名と一致させる必要もないはず。jenkins_data:/var/jenkins_homevolumes:jenkins_data:volumesにある/var/run/docker.sock:/var/run/docker.sockでJenkinsイメージのhostにあるDockerを使用。/ci:/ci:roはjenkinsが読み込みたいファイル類の置き場(このブログだと関係ないはず)dockerhubにあるnginx-proxyとletsencrypt-nginx-proxy-companionでssl化していてnetworksにあるproxy_defaultはそちらのネットワーク。取消線入れてあるところは、多分無くても動くはずの今回のブログでは必須では無い物。(だが、自分の環境ではそれでやっていて最低限の設定は確認していないのでのせておく。jenkins公式のJenkinsイメージにdockerをインストールしたもの。gidはhostのJenkinsユーザに合わせたもの。docker-machineでいれたら991になっていると思うが、各自で要確認。wpepeaDockerHubでの自動ビルドが複数回走ってしまう(未解決)コメントを残す理由)BitBucketのレポジトリへのpushをトリガーにDockerHubでイメージを自動ビルドする際に、Bitbucketで各Dockerfileで個別にレポジトリを持ちたくなかった。結果)ビルドが複数回走ってうまくいかない内容)一つのBitbucket側のレポジトリに複数のDockerfileをディレクトリを分て管理。Bitbhcket側でDockerfileのあるパスを指定しビルドをする形態をとりたかった。現時点では、イメージできはするけど一回のpushでビルドが複数回走ってしまう。pushで複数ビルドが走っている。ビルド回数は1+dockerfileの数回?(mavenというdockerfileのディレクトリとawscliというものがある)これからシンプルに1イメージ1レポジトリを試してみるけど、これだとやっぱり発生するかも1イメージ1レポジトリは動いた。wpepeadockerで起動したdnsmasqとvagrant(libvirtd)のdnsmasqがport競合コメントを残すdockerでdnsmasqを手軽に起動しようとしたら53番がすでにうまっていた。なにで使っていたっけとみてみるとvagrant(libvirtd)が内部で使用する用のdnsmasqがすでに立ち上がっていた。ググってみたところhostで直接dnsmasqを立てているときの解決法はでてきた。起動準を気にしないでお異様にlibvirt側の設定からリッスン(バインド?)するのを絞って(+docker側でも絞って)競合しないようにしたいけど、上の解決策が公式にあるってことは、libvirtの設定でlibvirtのdnsmasqをいじるのは難しいのかな?libvirtのdnsmasq.confは自動生成だから直接これを変わっていいものでもなさそうだし。最近はdockerばっかでvagrant触ることもほとんどないのでとりあえず止めとくか。失敗コメントを残す※こちらは(多分)NASの権限設定周りの問題でうまく動きませんでした。dockerのcifsボリュームマウントはできたのでdocker-composeにてownCloudの設定。データディレクトリはボリュームプラグインでマウントしているNAS(Cifs)ownCloudの前面にnginx-proxyとjrcs/letsencrypt-nginx-proxy-companionを使ってSSL化しているのでそちらがらみの設定もあり。(青字部分)/var/www/html/dataのパーミッションがおかしくなっていたので確認中。-rfをしてしまった。)docker-volume-netshareを起動するときにuid,gidは指定しないといけなかった。NAS側のユーザがパーミッション与えておかないといけない(よう)だが、NASの設定があまりうまくいかないのでownCloudのデータボリュームとして使うのはあきらめた。wpepeaCentOS7にdockerのnetshareプラグイン設定(CIFS)コメントを残すCentOS7上で動かしているdocker(ownCloud)でボリュームにNASを使いたいのでcifsを使えるというnetshareプラグインを設定してみる。公式によるとDebian/Ubuntu以外はバイナリ入れるかgoでコンパイルしろとのこと。getの段階でおこられた。errorsリファクタリング派手にしてこわれているまま?(こちら)数日後にフォークして修正したと同じスレッドに書き込まれていた。/bin/bashとdockerを起動してやる。cifsのパスは先頭の//が不要なので注意。これで、動くみたいだけどこのままだとサーバ再起動のたびにマウントしなくてはいけないので、Systemdに登録しておく。wpepeaまだ動いてなかったコメントを残すdocker-machineでcreateしたdockerだけど、離席から帰ってきたら動いていなかった。Unknown離席前にリモートのサーバrebootかけてたな。rmしてから作り直そうとしたけど繋がらなそう。直に通常のssh接続しようとしても繋がらず。単純にssh繋がらないだけっぽい。いうことでさくらVPSなので管理画面から接続。やったことを改めて思い返すとdocker-machine入らなかったのでSELinux一時停止して試したままだった。port変更したけどSELinuxの設定していない。新しいポート表示されず。wpepeadocker-machineが古かったコメントを残すdocker-machineでCentOS7に入れたdockerが起動しなかった。Engine.症状をみるとこれっぽい。日付けをみるとだいぶ古いけど、masterには取り込まれているから〜といっている。ことは、docker-machineが古いな。日本語ドキュメントのワンライナー手順で入れたけど、リリースページを確認するとにほんご頁よりも大分バージョンが上がっている。リリースページの手順で再インストール。docker-engineしたら取り敢えず入った。wpepea案件募集中です店が開店休業状態なので、店番をしながらできるシステムの仕事を募集中です。@YoshitakeKitamuもしくは店へのご連絡お待ちしています。