269
275

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.

dockerを使って動作中のサーバーをホスティング会社間で移動する

Last updated at Posted at 2014-04-23

dockerがどのくらいできるのか試してみました。
VPSなどは年々スペックがインフレするので時々契約を変更したくなりますが動いているものがあると移動できなかったりします。
これらができるとサーバー会社を移動したり、アクティブ率の下がったアプリケーションをスペックの低いサーバに移動したりと使いどころが多いですよね。

今回試したのはサーバー会社とディストリビューションの両方が違う環境です。

動かしているのは個人用のowncloudになります。
環境は以下

サーバー会社 ホスト OS コンテナ OS
さくらのクラウド ubuntu 12.04 (64-bit) ubuntu 13.04 (64-bit)
Amazon Amazon Linux AMI (64-bit)

まずは動いている状態のdockerからコンテナをエクスポートします。

docker psは以下のような状態

Screenshot_from_2014-04-23 23:16:39.png

エクスポートコマンドを実行します。

command
sudo docker export 8a0cf0655e89 > img.tar

しばらくまつと何も言わず完了してカレントディレクトリにimg.tarができ上がっていますのでこれをscpなどでAWSに転送します。

転送が終わったら今度はAWSのdockerにインポートします。
[jessie:test]はインポートし終わったときのREPOSITORYとTAGになります。

command
cat img.tar |sudo  docker import - jessie:test

これで動作させる準備が整いました。
docker runコマンドで動作させます。
この時、Dockerfileを使って構築した時に指定したCMDがなくなってしまうようなので以下のようにコマンドを指定する必要がありました。
[-p 80:80]を指定してポートがフォワーディングされるようにしています。(httpでない場合は不要です)

command
sudo docker run -p 80:80 -d jessie:test /usr/sbin/apache2ctl -D FOREGROUND

以上で会社の移動が無事できました。
逆にAWSからさくらのクラウドなどの移動もスムーズにできると思います。

バックアップや他社VPSへの移動なども簡単にできるようになるので使わない手は無いですね。

では!

269
275
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
269
275

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?