Skip to content

Instantly share code, notes, and snippets.

@mapk0y
mapk0y / alpine-dns.md
Last active August 27, 2016 17:32
AlpineLinux 3.4 以降で dns search が優先される問題

AlpineLinux 3.4 で名前解決の際に、dns_search があるとそちらが優先される。

  • resolv.confsearch sakura.ne.jp がある。
  • http://image/ にアクセスをする。
  • image の名前解決をせずに、image.sakura.ne.jp の名前解決をしてしまう。
  • options: ndots:0 が設定されているがこれも無視されている模様。

解決策

dns_search を空にすることで回避。

@mapk0y
mapk0y / docker-compose-name-resolv.md
Last active August 27, 2016 03:48
docker-compose と 名前解決

利用した docker-compose.yml

version: '2'

services:
    bar:
        image: alpine
        command: sh -xc 'ping foo'
    foo:
        image: alpine
@mapk0y
mapk0y / docker-ps-volume-filter.mkd
Last active June 9, 2016 02:43
docker で volume を利用しているコンテナ一覧

volume の作成

[mapk0y@kona:~]$ docker volume create --name v01
v01
[mapk0y@kona:~]$ docker volume ls
DRIVER              VOLUME NAME
local               v01

イメージの起動

[mapk0y@kona:~/local/docker/docker-fess/10.0](master)$ docker run -d -p 8080:8080 -p 9201:9201 -p 9301:9301 --name fess fess
9171928d7277d65b23b9e0cf9ba6402d7dfc8dbcd8d50720bb4c6a09e16a5046
[mapk0y@kona:~/local/docker/docker-fess/10.0](master)$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                        
            NAMES
9171928d7277        fess                "/opt/fess/bin/fess /"   6 seconds ago       Up 4 seconds        0.0.0.0:8080->8080/tcp, 0.0.0.0:9201->9201/tcp, 0.0.0.0:9301$
>9301/tcp   fess
@mapk0y
mapk0y / mysql-docker-import.md
Created May 13, 2016 12:47
Docker上のMySQLにファイルからsqlを実行する
[mapk0y@kona:~/local/docker/mysql-import]$ docker run -d -e MYSQL_ROOT_PASSWORD=rootpass --name mysql mysql
acb2abff5624c94071c788ebf4c1a3769e6b1101fd7ea517450f1f1f2d1b3163
[mapk0y@kona:~/local/docker/mysql-import]$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
acb2abff5624        mysql               "docker-entrypoint.sh"   4 seconds ago       Up 3 seconds        3306/tcp            mysql
[mapk0y@kona:~/local/docker/mysql-import]$ cat create_table.sql 
CREATE DATABASE tmpdb;
use tmpdb;
CREATE TABLE users (id INT, name VARCHAR(255));

Jessie(Debian GNU/Linux 8.4)

debian-jessie:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.4 (jessie)
Release:        8.4
Codename:       jessie
debian-jessie:~# ls -l /usr/bin/schroot
-rwsr-xr-x 1 root root 1411336 May 25  2014 /usr/bin/schroot
@mapk0y
mapk0y / alpine-golang.md
Last active April 21, 2016 17:29
alpine と golang(net)

golang は linuxbrew (多分インストール処理としては go1.4 のバイナリを落としてきて 1.6 を build)

[mapk0y@kona:~]$ docker pull alpine:latest
latest: Pulling from library/alpine

420890c9e918: Pull complete 
Digest: sha256:9cacb71397b640eca97488cf08582ae4e4068513101088e9f96c9814bfda95e0
Status: Downloaded newer image for alpine:latest
[mapk0y@kona:~]$ cd alpine-go-net-sample/
@mapk0y
mapk0y / docker-run-ip.md
Last active July 13, 2020 06:46
docker v1.10 から追加される docker run 時の ip指定オプションに関して

version の確認

jessie:~# docker version
Client:
 Version:      1.10.0-dev
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   7a44265
 Built:        Thu Jan 14 20:52:45 2016
 OS/Arch:      linux/amd64
@mapk0y
mapk0y / docker-files.md
Last active March 14, 2020 11:44
docker での設定ファイルをコンテナ外で管理する例

前提

  • /etc/foo.conf をコンテナ外で管理する
  • ファイルのパスは変えない
  • /work をマウントするパスとする
  • マウントするホストのディレクトリは ${PWD}/etc 以下にあるとする

Dockerfile は以下のようにする

# デフォルトのファイルを移動して symlink 
@mapk0y
mapk0y / docker-check-publish.md
Last active November 27, 2015 09:32
docker の publish の確認

-p 50000:50000 だけしているコンテナがある場合

  1. 外部からの接続用設定の確認(iptables)
root@lubuntu:~# iptables -t nat -L PREROUTING -nv
Chain PREROUTING (policy ACCEPT 23 packets, 3088 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DOCKER     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ADDRTYPE match dst-type LOCAL