LoginSignup
2
1

More than 5 years have passed since last update.

VagrantfileのShellでdocker-composeが実行出来なくてハマった

Last updated at Posted at 2017-04-01

VagrantfileのShellで docker-compose up しようとして半日以上ハマったのでメモ。

実際に使っていたVagrantfileはこちら。

Vagrantfile
Vagrant.configure("2") do |config|

    # 対象box
    config.vm.box = "centos/7"

    # 外部から接続するIP
    config.vm.network "private_network", ip: "192.168.33.119"

    # CPU,メモリーサイズ
    config.vm.provider "virtualbox" do |vb|
        vb.cpus = 2
        vb.memory = 1024
    end

    # [初回のみ]必要なパッケージのインストール等初期設定
    config.vm.provision "shell", inline: <<-SHELL
        timedatectl set-timezone Asia/Tokyo
        yum install docker
        echo | docker --version
        groupadd docker
        gpasswd -a vagrant docker
        systemctl start docker
        systemctl enable docker
        curl -L https://github.com/docker/compose/releases/download/1.12.0-rc2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
        chmod +x /usr/local/bin/docker-compose
        echo | docker-compose --version
    SHELL

    # CentOS7だと外から接続出来ないバグが発生するらしいので念のため。。。
    # Firewalldが有効だと外部から接続出来ないので常にOffにしておく
    # dockerコンテナがうまく立ち上がらないことがあったので念のため。。。
    # dockerコンテナ起動(初回はイメージ、コンテナ生成も行われる)
    config.vm.provision "shell", run: "always", inline: <<-SHELL
        systemctl restart network
        systemctl stop firewalld
        systemctl restart docker
        docker-compose -f /vagrant/docker-compose/docker-compose.yml up -d
    SHELL

end

vagrant up を実行すると。。。

==> default: /tmp/vagrant-shell: line 10: docker-compose: command not found
==> default: The SSH command responded with a non-zero exit status. Vagrant
==> default: assumes that this means the command failed. The output for this command
==> default: should be in the log above. Please read the output to determine what
==> default: went wrong.

docker-composeなんか無いよって言われる。。。

VagrantfileのShellでdocker-composeを実行する記事が結構あるのに。。。

色々試行錯誤した結果、 /usr/local/bin がパス通ってないことに気づく!

docker-compose を /usr/local/bin/docker-compose に変えて実行してあげたらうまくいきました。

ただ、細かいところは全然わかっていないので是非ご指摘頂けると幸いです。

2
1
0

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
2
1