minio/minfsプラグインを使って、nginxコンテナのvolumeにminioのbucketを指定してみた

  • 1
    いいね
  • 0
    コメント

参考

docker 1.13 以降が必要。

/etc/apt/sources.list.d/docker.list
deb https://apt.dockerproject.org/repo ubuntu-xenial main
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
sudo apt update
sudo apt install -y docker-engine docker-compose
$ docker -v
Docker version 17.05.0-ce, build 89658be

minio/minfs pluginインストール

230MBほどダウンロードする
sudo docker plugin install minio/minfs

docker-compose.yml

minio/minio
minio1:
  image: minio/minio
  ports:
    - "9000:9000"
  environment:
    - "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE"
    - "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
  volumes:
    - ./export:/export
    - ./config:/root/.minio
  command: server /export
minio/minfs+nginx
version: '2'
services:
  my-test-server:
    image: nginx
    ports:
      - "80:80"
    volumes:
      - my-test-store:/usr/share/nginx/html:ro

volumes:
  my-test-store:
    driver: minio/minfs
    driver_opts:
      endpoint: "http://localhost:9000"
      access-key: "AKIAIOSFODNN7EXAMPLE"
      secret-key: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
      bucket: "bucket1"

動作確認

cd minio1
docker-compose up -d
docker-compose logs -f

ACCESS_KEYとSECRET_KEYが指定したものであることを確認。

スクリーンショット_2017-08-01_15-22-36.png

http://localhost:9000 にアクセスし 先程の ACCESS_KEYとSECRET_KEY でログイン。右下の+マークをクリックし
bucketを作成。名前はbucket1とした。
その中に index.html をupload。

スクリーンショット_2017-08-01_15-24-47.png

cd nginx
docker-compose up -d

http://localhost にアクセスし index.html の中身が表示されていることを確認。

index.png