Ubuntu LXC コンテナに mongodb をインストールできません。
Ubuntu 14.10 ホストを設定するには、次のガイドラインに従ってください。https://linuxcontainers.org/lxc/getting-started/
lxc-create --version
1.1.0
ドキュメントに従ってテンプレートをダウンロードして仮想マシンを作成し、Ubuntu 14.10 amd64ゲストを選択しました(14.04 amd64でも同じ動作が発生しましたが)。
私はそれにこだわり始めた
lxc-start -n test0 && lxc-attach -n test0
私が実行しているコンテナの内部
apt-get update && apt-get install mongodb
次の出力でインストールが失敗します。
...
Setting up mongodb-clients (1:2.6.3-0ubuntu5) ...
Setting up mongodb-server (1:2.6.3-0ubuntu5) ...
Adding system user `mongodb' (UID 101) ...
Adding new user `mongodb' (UID 101) with group `nogroup' ...
Not creating home directory `/var/lib/mongodb'.
Adding group `mongodb' (GID 105) ...
Done.
Adding user `mongodb' to group `mongodb' ...
Adding user mongodb to group mongodb
Done.
start: Job failed to start
invoke-rc.d: initscript mongodb, action "start" failed.
dpkg: error processing package mongodb-server (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of mongodb:
mongodb depends on mongodb-server (>= 1:2.4.1-2); however:
Package mongodb-server is not configured yet.
dpkg: error processing package mongodb (--configure):
dependency problems - leaving unconfigured
Processing triggers for libc-bin (2.19-10ubuntu2.3) ...
Processing triggers for ureadahead (0.100.0-16) ...
Errors were encountered while processing:
mongodb-server
mongodb
E: Sub-process /usr/bin/dpkg returned an error code (1)
10genリポジトリで14.04コンテナを使用すると、同じエラーが発生します。
start: Job failed to start
invoke-rc.d: initscript mongod, action "start" failed.
dpkg: error processing package mongodb-org-server (--configure):
subprocess installed post-installation script returned error exit status 1
Setting up mongodb-org-mongos (3.0.0) ...
Setting up mongodb-org-tools (3.0.0) ...
dpkg: dependency problems prevent configuration of mongodb-org:
mongodb-org depends on mongodb-org-server; however:
Package mongodb-org-server is not configured yet.
df -h
一部の検索では、ディスク領域の不足が問題を引き起こす可能性があると述べていますが、コンソールによると、空き容量は15Gを超えています。
コマンドで実行すると、mongod
/data/dbパスを探していることがわかります。作成すると実行できますが、mongod
実行するとservice mongodb start
返されますstart: Job failed to start
。
いくつかの他の仮想ホストと物理ホストで試してみましたが、常に同じエラーが発生しました。
ベストアンサー1
しばらく前に、Ubuntu 14.04をゲストOSとして使用するlxcで同様の問題が発生しました。もう少し調べたところ、limit nofile ...
mongodb upstart操作の指示のために、dpkg --configure
mongodbのインストール後にプロセス中にmongodb-serverパッケージへの呼び出しが失敗して終了することがわかりました。この行をコメントアウトすると、インストールプロセスを続行して正常に完了できます。
root@mongodb:~# apt install mongodb
...
Setting up mongodb-server (1:2.4.9-1ubuntu2) ...
start: Job failed to start
invoke-rc.d: initscript mongodb, action "start" failed.
dpkg: error processing package mongodb-server (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of mongodb:
mongodb depends on mongodb-server (>= 1:2.4.1-2); however:
Package mongodb-server is not configured yet.
dpkg: error processing package mongodb (--configure):
dependency problems - leaving unconfigured
Processing triggers for libc-bin (2.19-0ubuntu6.6) ...
Processing triggers for ureadahead (0.100.0-16) ...
Errors were encountered while processing:
mongodb-server
mongodb
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@mongodb:~# sed -i -r 's/^limit nofile/#&/' /etc/init/mongodb.conf
root@mongodb:~# apt install mongodb
Reading package lists... Done
Building dependency tree
Reading state information... Done
mongodb is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]
Setting up mongodb-server (1:2.4.9-1ubuntu2) ...
mongodb start/running, process 3447
Setting up mongodb (1:2.4.9-1ubuntu2) ...
root@mongodb:~# sed -i -r 's/^#limit nofile/limit nofile/' /etc/init/mongodb.conf
root@mongodb:~# initctl restart mongodb
mongodb start/running, process 3480