docker cloudstack issue
2015-08-26 19:45
701 查看
在docker中安装cloudstack-management时,执行cloudstack-setup-management中间会执行下面一个脚本
/bin/bash /usr/share/cloudstack-common/scripts/vm/systemvm/injectkeys.sh \
/var/cloudstack/management/.ssh/id_rsa.pub \
/var/cloudstack/management/.ssh/id_rsa \
/usr/share/cloudstack-common/vms/systemvm.iso
在docker中提示
Injected public and private keys into systemvm iso with result : mount: Could not find any loop device. Maybe this kernel does not know
about the loop device? (If so, recompile or `modprobe loop'.)
经查,是docker容器中没有loop device(使用losetup -f)
使用下面命令启动容器可以解决
docker run -d -it --privileged=true --name cloudstack-management-4.5.2-test \
-p 8081:8080 -p 8097:8096 -p 8788:8787 -p 8251:8250 -p 9091:9090 centos6.5/cloudstack-management-4.4.1 /bin/bash
注:--privileged=true是为了在容器中能访问loop设备,还有其他的方法,
The quick answer
docker run --privileged=true ...
An alternative
sudo losetup /dev/loop0 test.img
mount /dev/loop0 /mnt
docker run -v /mnt:/mnt ...
This almost works
docker run --device=/dev/loop-control:/dev/loop-control --device=/dev/loop0:/dev/loop0 --cap-add SYS_ADMIN ...
但未测试
新建loop设备
mknod -m 0660 /dev/loopX b 7 X
注意loopX对应的X
例如新建一个loop3
mknod -m 0660 /dev/loop3 b 7 3
service mysqld start
cloudstack-setup-databases cloud:password@localhost --deploy-as=root(若容器IP改变,重新生成db.propery)
cloudstack-setup-management
(该执行脚本的调用脚本修改了两处地方,
一是iptable设置,修改不进行iptables修改;
二是对/etc/security/limits.conf 修改-1为4096
cloud hard nofile 4096
cloud soft nofile 4096)
/bin/bash /usr/share/cloudstack-common/scripts/vm/systemvm/injectkeys.sh \
/var/cloudstack/management/.ssh/id_rsa.pub \
/var/cloudstack/management/.ssh/id_rsa \
/usr/share/cloudstack-common/vms/systemvm.iso
在docker中提示
Injected public and private keys into systemvm iso with result : mount: Could not find any loop device. Maybe this kernel does not know
about the loop device? (If so, recompile or `modprobe loop'.)
经查,是docker容器中没有loop device(使用losetup -f)
使用下面命令启动容器可以解决
docker run -d -it --privileged=true --name cloudstack-management-4.5.2-test \
-p 8081:8080 -p 8097:8096 -p 8788:8787 -p 8251:8250 -p 9091:9090 centos6.5/cloudstack-management-4.4.1 /bin/bash
注:--privileged=true是为了在容器中能访问loop设备,还有其他的方法,
The quick answer
docker run --privileged=true ...
An alternative
sudo losetup /dev/loop0 test.img
mount /dev/loop0 /mnt
docker run -v /mnt:/mnt ...
This almost works
docker run --device=/dev/loop-control:/dev/loop-control --device=/dev/loop0:/dev/loop0 --cap-add SYS_ADMIN ...
但未测试
新建loop设备
mknod -m 0660 /dev/loopX b 7 X
注意loopX对应的X
例如新建一个loop3
mknod -m 0660 /dev/loop3 b 7 3
service mysqld start
cloudstack-setup-databases cloud:password@localhost --deploy-as=root(若容器IP改变,重新生成db.propery)
cloudstack-setup-management
(该执行脚本的调用脚本修改了两处地方,
一是iptable设置,修改不进行iptables修改;
二是对/etc/security/limits.conf 修改-1为4096
cloud hard nofile 4096
cloud soft nofile 4096)
相关文章推荐
- docker从容器中怎么访问宿主机
- Docker:Up & Running(读书笔记,前半部分)
- Docker的基本使用
- docker+jenkins的实现方式(ps.使用dockerfile的方式)!
- Rocket 希望以硬件隔离引领潮流,Docker说” NO”
- Docker基础技术:DeviceMapper
- Docker基础技术:DeviceMapper
- docker学习笔记3—使用Dockerfile与docker build命令创建一个nginx服务器镜像,并使用浏览器进行访问
- 使用Docker部署Spark集群
- 为什么docker还不能广泛用于生产中
- 基于虚拟linux+docker搭建hadoop完全分布式集群
- Docker 1.8.0增加Content Trust,容器安全性提升
- 使用 Docker 搭建 Java Web 运行环境
- 深入浅出Docker(一):Docker核心技术预览
- 记一次简单升级内核(为docker ceph升级 2.6.32-4.1.6)
- docker学习笔记1—常用命令
- Docker/compose分析
- 部署自己的私有 Docker Registry
- Docker 面临的安全隐患,我们该如何应对
- 3.0.3、Docker废弃的特性