4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[苦戦中][メモ]chef-container / knife-container

Last updated at Posted at 2014-10-24

昨日の楽天でのセミナーでchefの中の人に,chef-containerを紹介してもらったんで,早速やってみたら,さっそくハマった話。

そもそもchefを触ったことないヤツが,中途半端な事前知識で突撃する物語。

chefのインストール

chefDKをダウンロードしてrpmインストール。 (書いてある通りにやる)
今回はcentos6に入れたので,RHELのインストーラを取ってきた。

Proxy環境下でのgem

毎回ハマるproxy
gemが参照するのは/etc/environmentらしい。

参考: http://qiita.com/Kentrow@github/items/b5a7dc8819a2e0e0f603

/etc/environment
http_proxy="http://USER:PASS@URL:PORT"
https_proxy="http://USER:PASS@URL:PORT"

"で囲うのが特徴的。

(しかし,自分のプロキシの情報が,あっちこっちに記述されてて,メンテできん。。。)

knife-container/chef-containerインストール

chef gem install knife-container
chef gem install chef-container

頭にsudoを最初つけていたら,rootのchefにインストールされてしまう模様。注意。
公式にはchef-containerの記述はなかった。knifeだけでいいのかな?(よくわかってない)

knife-containerやってみる

その前にchef-repoを作っておいた方がいいらしいので,knifeで作る

$ chef gem install knife-solo
$ knife solo init chef-repo
$ cd chef-repo

いよいよknife-containerを叩く。
公式に記述してあるヤツをそのまま叩く。
https://docs.getchef.com/containers.html

$ knife container docker init docker -r 'recipe[apache2]' -z -b
...
Context Created: ./dockerfiles/docker
$ tree dockerfiles/
dockerfiles/
└── docker
    ├── Berksfile
    ├── Dockerfile
    └── chef
        ├── first-boot.json
        └── zero.rb

おおお,それっぽい!

dockerfiles/docker/Dockerfile
# BASE chef/ubuntu-12.04:latest
FROM docker
ADD chef/ /etc/chef/
RUN chef-init --bootstrap
RUN rm -rf /etc/chef/secure/*
ENTRYPOINT ["chef-init"]
CMD ["--onboot"]

Dockerfileもできてる模様。なるほど,chefフォルダを/etc/chefにマウントして,chef-initを叩く,,,と (Dockerfileは読める)

buildしてみる

このディレクトリでいいのかなーと思ってとりあえず叩いてみる

$ knife container docker build docker -z
...
 no Dockerfile found in ./dockerfiles/docker

!?

なんか,色々うまくいってそうな雰囲気だったのに><

$ tree dockerfiles/
dockerfiles/
└── docker
    ├── Berksfile
    ├── Berksfile.lock
    ├── Dockerfile
    ├── chef
    │   ├── first-boot.json
    │   └── zero.rb
    └── dockerfiles
        └── docker
            └── chef
                └── cookbooks
                    ├── Berksfile.lock
                    ├── apache2
...
33 directories, 244 files

なんかフォルダ構成がおかしくなってる。多分カレントディレクトリがdockerfiles/dockerになったところで,何か構築してしまってるみたい。たしかにdockerfiles/docker/dockerfiles/dockerにはDockerfileはない模様。

…あと少しだったのに。。。 とりあえずpending...

4
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?