wckr / wocker

Create your WordPress development environment in 3 SECONDS!

Home Page:https://wocker.dev/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Errors after Virtualbox and Vagrant update then vagrant up

echizenyayota opened this issue · comments

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

  • virtualbox : 5.0.0r101573 → 5.1.12r112440
  • vagrant : 1.7.4 → 1.9.1

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

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

commented

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

commented

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

commented

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

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

15

commented

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

@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

commented

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

commented

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

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

commented

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

@echizenyayota さん

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

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

@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

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