こんにちは、RSPインターネット ネットワークチームの陸ステです!
※この記事は「ConoHa Advent Calendar 2025」の2025年12月17日の枠です。
※※※この記事では同サービスを紹介、及び宣伝する場合があります。
今回は「ConoHa WING」と「ConoHa VPS オブジェクトストレージ」を使って
インフラ部分は完全に触れずに運用という条件でクラウドストレージを構築して
いきたいと思います!
ちなみに上記で「インフラ部分は完全に触れずに運用」と記載はしておりますが、具体的な
意味合いとしては「インフラ(サーバーなどの設備)」を自身で管理しないという意味です。
サーバ領域やウェブアプリケーションは自身で管理する必要がありますのでご注意ください。
(サーバ領域:割り当てられたサーバーアカウントで操作可能範囲)
(ウェブアプリケーション:WordPressやNextcloudといったWebサーバ側で動作するソフトウェア)
ConoHa WINGでは契約プランによりますが300GB以内であれば料金体系内で利用することができます(2025年12月17日現時点)。
メールやWEBアプリの容量を考慮すると280GB程度までであればConoHa WINGの料金内で収まると思います。
今回オブジェクトストレージを利用する理由は後述しますのでご自身が良いと思われる方法でご運用ください。
※過去に「ConoHa VPS/Swift」でクラウドストレージ構築の記事を投稿された方が
いらっしゃいます。当記事中の一部情報で当該記事の情報を参考にしておりますが、
内容は当該記事に基づかないよう構成しています。
※「ConoHa」は、GMOインターネットグループ株式会社様の登録商標です。
※この記事で解説する内容はRSPインターネットグループでの運用の際に活用した
技術情報などを含みますが、弊団体は当該内容を保証するものではございません。
※この記事はサービスを一部紹介/宣伝させていただく場合があります。
WINGを契約する
早速ですが、先にConoHa WINGをお申込みしていきます。
ただ既存の契約があり既存のサーバーを利用する場合は、次に飛ばしていただいてかまいません。
今回の場合は、別用途で既に契約がありますが既存契約のサーバは見なかったことにしてください()
ちなみにログインした直後にスクショ撮ってしまったのでIPアドレスも見なかったことにして下さいw(撮り直せばよかった())
但し、今回の契約は紹介のためなので時間課金を使いますが月/年単位で利用する場合はWINGパックの方が圧倒的にお得です。
ちなみにアカウントをまだお持ちでない方はホームページからお申し込みが必要です。

ログインしたらVPSの管理画面が表示されるので上部のWINGをクリックすると真ん中にある「サーバー追加」(だったと思います!)からサーバを契約します。
左上の「サーバー追加」からでも大丈夫です!
今回は契約方法も紹介するので実際に追加していきます。

サーバー追加になるとこの画面になるので「初期ドメイン」を利用するのであれば、
初期ドメインを事前に決めてから追加しましょう。今回の場合は紹介用なのでこのままにします。
ただ契約後でも「1回」は変更可能です(いつ頃から変えられるようになったんだろう…)。
一旦このままで後から1回限りの変更か独自ドメインに切り替えても良いと思います!
通常料金ではなくWINGパックを使う場合は独自ドメインが契約期間中は無料で使えるので
WINGパックにする場合は独自ドメインを推奨します!

サーバーお申し込みが完了すれば「受け付けました。」と左下に表示されるので待ちましょう!

構築が完全に完了するのは数分程度掛かるのでその間はゆっくり休憩しましょう~
清楚かわいい美雲このはちゃんがデータセンターに居るので一生懸命構築してくれてます(?)←絶対違う
(それかConoHaショップ店長の美雲あんずちゃんかもしれない←???)
構築が完了すると通知で教えてくれます!体感では1分もかからない気がします!

次にデータベースを作っていきます。
データベースを作る
Nextcloud用のデータベースを作っていきます、ちなみにSQLiteでも一応動作はします。
ただ一人だけで完全に使うのであればいいと思いますが、複数人利用の可能性がある場合は
最初からSQLite以外で保存しておいたほうが無難です。
ということでデータベースとデータベースのアカウントを作ります。
おそらく契約した直後は「サーバー管理」なので「サイト管理」→「データベース」に進みます。

そしたら「+データベース」と「+ユーザー」でそれぞれ作ります。
まずはデータベースを作ります。

データベースが正常に作成できてればこんな感じで表示と同じく通知がでます!

次にデータベースに接続できるようにユーザーアカウントを作ります。
この時に接続先データベースを先に作成していること、他のデータベースにならないようご注意ください!

こちらも同じく「保存」でデータベースのユーザーアカウントを作成します。

どちらも作成できればこのようになっていると思います。

ちなみにデータベースの情報(データベース名とユーザー名)は使いますのでメモなどを取っておいてください!
そしたら次は本題のオブジェクトストレージを契約していきます。
オブジェクトストレージを契約する
それでは早速オブジェクトストレージを契約していきます。
オブジェクトストレージを使うのはなぜか先に説明します。
ご自身の運用状況、及び運用ポリシーでオブジェクトストレージの併用についてはご考慮ください。
本来「レンタルサーバー」ではファイル置き場として想定されていないことが多く、
大量の大容量データを保存していると負荷となることや障害/メンテナンスなどで
マイグレーションを伴う際、その分時間を要することがあります。
オブジェクトストレージを併用すればレンタルサーバーに保存されているのはウェブアプリ
単体のみであるため、マイグレーションに伴う時間を限りなく抑えることができ上記による
影響時間を限りなく少なくすることができます。また、サーバ側の負荷も抑えられますので
運用コストも最低限に抑えることが可能となります。
それでは、上記の内容を前提とし上部にある「VPS」から「オブジェクトストレージ」を
契約していきます。
ちなみにオブジェクトストレージはVer.3.0環境で契約します。Ver.2.0環境とは異なり、
Ver.3.0環境ではAPIアカウントの作成が先に必須となりますのでご注意ください。

APIユーザーの作成をすでに行ってしまったため、以下からご参考にしてください。
ConoHaの公式サポートページとなります。
(普通にスクリーンショットを撮るの忘れてました…)

APIアカウントの作成が完了したら「オブジェクトストレージ」から契約します。
説明が記載されている通り、工具マークをクリックします。

そうしますと、ディスク容量変更の画面が表示されるため記載の通りに進めます。
月額544円、時間課金で0.9円、1日21.6円です。

変更が完了するとディスク容量が元々0GB/0GBだったところ、0GB/100GBに変わります。

これで準備は完了です、ちなみにAPIのアクセス情報はメモしておいてください!
サーバーにインストールする
それでは最終幕のConoHaのサーバにNextcloudをインストールして使えるようにします。
今回NextcloudのインストールにConoHa WINGのファイルマネージャーを使います。
従って、FTPクライアントは今回操作しません。
ファイルマネージャーはコンパネログイン後のサーバ一覧からもアクセスできますし、
サイト管理からでも問題ありません。
管理画面トップのサーバーのところだと、

サイト管理内だとこれです!

ここからはディレクトリなどを操作しますが、注意事項として表記中に今回の場合は
[2025121715044s33k76n.conohawing.com]とありますがこれはご自身のFQDNに
置き換えてください。
また、今回「Nextcloud」のソフトウェアインストールにはWeb Installerを使います。
そのため、一部PHPのファイルを設置したりしますがプログラムを書いたりすることは
ないのでご安心ください!
そのため、事前にNextcloudから「Community projects」にある、
Web Installer(setup-nextcloud.php)をダウンロードしておきます。
ファイルマネージャーを開くとこのような画面になりますので、以下の通りクリックしていきます。

public_html → 2025121715044s33k76n.conohawing.com(ご自身のもの)
そうしますと以下のような画面になると思われます。

この画面になったら「ファイルアップロード」で先ほどのsetup-nextcloud.phpをサーバに保存します。
右クリックして「ファイルアップロード」でもいいですし、上のロゴからでも大丈夫です。

アップロードできればこのような感じになると思います。

そうしたらブラウザで今回の場合で言う、
2025121715044s33k76n.conohawing.com/setup-nextcloud.php
にアクセスします。
そうするとここから英語が入ってきますが、画面の通りに進めれば問題なく進められます!
これはこのまま「Next」に進みます。

そうしますと、次のページでどこにNextcloudを設置しますか?と聞かれます。
今回はドメイン直下で設置することにするので、「nextcloud」を「.」にします。

そうすると読み込み中となりますが、次に進むまでこのまま待ちます。
この間も休憩しておきましょう!
完了したらNextcloudをサーバにインストールできました!

これもこのまま「Next」でセットアップをしていきます。
そしたらここでデータベースの情報が必須になりますので、メモしておいたものを閉じていれば開き直します。
ちなみにデータベースサーバーのホスト名も必須になります。これは、ユーザー毎によって
異なるので、サーバー管理の「契約情報」→「サーバー情報」→「収容ホスト」にある
データベースサーバーとなります! mysql**.conoha.ne.jp のものになります。

入力が終わりましたら、そのままインストールします。
オブジェクトストレージとの接続はその後に行います。
インストールが終わると推奨アプリがでてきますが、ここは任意で選択します。
後からでもインストールできるので私はスキップにしました。

そうするとファイル一覧がでてきますが、ここで一旦ファイルマネージャーに移ります。
おそらくsetup-nextcloud.phpがアップロードされた状態で止まっていると思われますので、
白いところでクリックして更新(F5)をするとこんな感じになります。

configを今回変更するのでconfig → config.phpをテキストエリアで編集します。

「'installed' => true,」が末尾にあるのでその下に以下のコードを記述します。
ちなみにVer.3.0を前提としてここでは記載するので、Ver.2.0の場合は後述の通りに
する必要があります。
ちなみに「********」としている部分はAPIユーザーの情報とテナント情報になります。
各自で異なる情報なので、APIユーザー作成したときの情報を使います。
'objectstore' =>
array (
'class' => 'OC\\Files\\ObjectStore\\Swift',
'arguments' =>
array (
'catalogName' => 'swift',
'autocreate' => true,
'user' =>
array (
'name' => 'gncu********',
'password' => '*****************',
'domain' =>
array (
'name' => 'Default',
),
),
'scope' =>
array (
'project' =>
array (
'name' => 'gnct********',
'domain' =>
array (
'name' => 'Default',
),
),
),
'serviceName' => 'swift',
'region' => 'c3j1',
'url' => 'https://identity.c3j1.conoha.io/v3',
'bucket' => 'nextcloud',
),
),
その後Nextcloudにアクセスしても問題なく動くかどうか確認をします。
無事に以下のようなページが表示され尚且つファイルアップロードをしても
ファイルマネージャーの「data」内で保存されてなければ問題なく適用されています。
今回はその確認を省略します。

CLIで確認できる方法もありますが、今回の記事では完全に自分でサーバを管理しないに加えて
初心者の方でも構築できるようにしているので、省略しています。
もし触れてみたいというチャレンジ精神のある方は前述していた通りのVPSとSwiftで
構築されていた方の記事をご参考になってみてください!
ConoHa VPSとSwiftでNextcloudをサクッと構築する #Conoha - Qiita#動作確認
構築はここで完了です!お疲れ様でした!
ここからは完全に裏話になりますので、時間があれば読んでいってください()
それでは陸ステでした!
裏話
上で言っていたVer.2.0環境の場合は、また記述が違うという件は一応解説すると以下のコードになります。
また、これに加えて一部プログラムを改変する必要があるので、今回の記事ではVer.3.0にした感じです!
まず「config.php」です。
'objectstore' =>
array (
'class' => '\\OC\\Files\\ObjectStore\\Swift',
'arguments' =>
array (
'username' => 'gncu********',
'password' => '*****************',
'container' => 'nextcloud',
'autocreate' => true,
'region' => 'tyo1',
'url' => 'https://identity.tyo1.conoha.io/v2.0',
'tenantName' => 'gnct********',
'serviceName' => 'Object Storage Service',
'catalogName' => 'Object Storage Service',
'bucket' => 'rspcld',
),
),
その次に「/lib/private/Files/ObjectStore/SwiftFactory.php」で変更も必須です。
187行です。こちらから参考にさせていただきました!
A patch to use ConoHa object storage from Nextcloud 14.0.0
$objectStoreService = $client->objectStoreV1();
↓
$objectStoreService = $client->objectStoreV1($this->params);
また、Ver.2.0環境からVer.3.0にするときにデータ移行も大変なので今回はVer.3.0で構築することで紹介させていただきました。
swiftコマンドでダウンロードはできるので問題ないんですが、Ver.3.0環境に移行したとき
segmenの引数を指定してなくて何回もミスしてしまった経験が(((
ちなみに以下のコマンドになるので私と同じ経験をしないように!()
swift upload <CONTAINER_NAME> <OBJECT_FILENAME> --segment-size 1073741824
ちなみにOBJECT_FILENAMEはパス指定できますがその際はcd場所をデータ直下にして
直下の「./」を参照するようにしたほうが良いです。おそらく、Swiftコマンドの仕様だと
思われますが、nextcloud/と指定するとオブジェクトストレージ側でもnextcloud/という
ディレクトリで区切られてしまいます。
上記は「りすぷクラウド(RisuPu Cloud)」で実際にあったお話でした。
長くなりましたが、余談と言うなの裏話は終わりです。
ここまででお読みいただきありがとうございました!


コメント