wckr / wocker

Create your WordPress development environment in 3 SECONDS!
https://wocker.dev/
MIT License
480 stars 42 forks source link

Errors after Virtualbox and Vagrant update then vagrant up #57

Closed echizenyayota closed 7 years ago

echizenyayota commented 7 years ago

昨日、virtualboxとvagrant のバージョンアップをしました。

そのせいかwocer ディレクトリからvagrant upをすると添付画像のようなエラーが出ます。 Vagrantfileに問題があると思いますが、どのように修正すればよろしいでしょうか?

ご存知の方がいらっしゃいましたら、よろしくお願いします。

14_2
ailispaw commented 7 years ago

@echizenyayota "ailispaw/docker-root" と出ているのでかなり古い Vagrantfile を使っておられます。 最新のものは https://github.com/wckr/wocker/blob/master/Vagrantfile になりますので、ご確認下さい。 一度現在の Vagrantfile をバックアップしてから、 最新のものに差し替えてお試しください。

ailispaw commented 7 years ago

@echizenyayota すみません。その他のファイルも更新されておりますので、 ディレクトリ全体をバックアップしたのち、 再度 https://wckr.github.io/ の手順から wocker を導入して下さい。 その後、バックアップから data ディレクトリをコピーし戻すと良いでしょう。

ailispaw commented 7 years ago

git がおわかりでしたら、git で最新のレポジトリを取得してもいいと思います。

echizenyayota commented 7 years ago

@ailispaw さん。さっそくのコメントありがとうございます。 現在のVagrantfileVagrantfile_1とコピーしてwockerディレクトリに残し、新しいVagrantfileを上記のページのものに差し替えてvagrant upしました。すると途中で通信ができなくなり、添付の画像のような状態になりました。次はどのような対応をすればよろしいでしょうか?

15
ailispaw commented 7 years ago

vagrant destroy をして、一度クリーンな状態にしてから、試してみて下さい。 また、上記にも書きましたが、Vagrantfile だけじゃなくて、wocker のレポジトリのファイルを全て更新して下さい。

echizenyayota commented 7 years ago

@ailispaw さん。 たびたびのアドバイスありがとうございます。 古いWockerに格納されていたコンテナの移動について、2つ質問があります。


1. 添付画像1枚目の右側はデスクトップに退避させた古いWockerのdataです。 例えばwp_design_getting_startedというコンテナを、新しいWockerの元でも使おうと思えば、左側のホームディレクトリに移した上で、

$ wocker run --name wp_design_getting_started

というコマンンドを実行することになると思います。ところが、その状態で wocker.devにアクセスしても デフォルトのtwentysixteenが表示されます。この状態は、データベースのインポートが出来ていないためにやむを得ないことなのでしょうか?

自分で作成している主要なテーマについては、先日教えてもらったDockerによるWockerのイメージ化でDockerHubに保存しています。なので、Wockerを新しくしたことによる影響はほとんどないのですが、wp_design_getting_startedのみまだイメージ化していなかったので聞いてみました。

なお、wp_design_getting_startedは、オリジナルのテーマを作成しています。

2. DockerHubからpullしてきたイメージをコンテナ化するときに、Macのハードディスクにマウントすることはできないのでしょうか?Docker自体が仮想化環境であるため、やむを得ないことでしょうか? (添付画像2枚目)


お忙しいところ誠におそれいりますが、一度ご確認いただければ幸いです。

16 17
ailispaw commented 7 years ago

まず、1についてですが、 データベースのバックアップ/リストアが出来ない状態ですと、設定は初期値のままになってしまうので、そのような状態になってしまいます。 ただ、WordPressのテーマのPHPのファイルになっている部分はそのままの状態で残っているはずですので、適切に設定をすれば復活させられるのではないでしょうか。

ailispaw commented 7 years ago

2についてですが、 これは Wocker 固有の話ではないですね。 Docker のコンテナは、コンテナ側からホストのフォルダを参照する形なので、Macからマウントすることは通常(NFSとか別の方法を使わない限り)出来ません。

そのかわり、コンテナの内容は docker cp コマンドでコピー(取り出すことが)出来ます。 docker cp <コンテナ名>:<コンテナ内ファイル/フォルダ名> <コピー先ファイル/フォルダ名> docker cp e-yota:/var/www/wordpress ./data/e-yota のような感じですが、詳細はDockerのドキュメントをご確認下さい。

ixkaito commented 7 years ago

@ailispaw さん もろもろありがとうございます。

@echizenyayota さん

1 については @ailispaw さんの書いたとおりです。データベースをエクスポートしていれば、wocker run --name wp_design_getting_started 後、インポートすれば元に戻ります。

2 については、wocker run コマンドにイメージを指定すればできます。 今回の場合: wocker run --name e-yota echizenya/e-yota_image:latest 詳しくはこちらを確認ください。

echizenyayota commented 7 years ago

@ailispawさん。@ixkaito さん。 たくさんのアドバイスありがとうございます!

1.

@ailispawさん。

データベースのバックアップ/リストアが出来ない状態ですと、設定は初期値のままになってしまうので、そのような状態になってしまいます。

了解です! VirtualboxとVagrantをアップデートする前にデータベースをエクスポートすべきでしたね。 ただ、おっしゃるようにPHPのオリジナルテーマは残っていました。 今後の教訓といたします。

2.

@ixkaito さん。

wocker run コマンドにイメージを指定すればできます。

おっしゃるとおりにwocker run --name e-yota echizenya/e-yota_image:latestをすると 添付の画像のとおり、MacのHDDにe-yotaをマウントさせることができました(添付画像1枚目)

@ailispawさん。

そのかわり、コンテナの内容は docker cp コマンドでコピー(取り出すことが)出来ます。

こちらもdocker cp wocker_5:/var/www/wordpress ./data/wocker_5で取り出すことができました。 (添付画像2枚目)

参考ページ https://docs.docker.com/engine/reference/commandline/cp/


もろもろありがとうございます。これでまたWordPressテーマ開発がやりやすくなりました!

3 4
echizenyayota commented 7 years ago

とりあえず、このissueはcloseしておきます。