Docker使用supervisor启动MongoDB
来源:互联网 发布:数据分析十大算法 编辑:程序博客网 时间:2024/05/27 09:48
Docker的学习中不断的进行完善、不断的学习,把一些原有的方法进行优化。
镜像下载地址:
旧方案地址:如有不成熟没有上传
新方案地址:https://github.com/aarongo/centos-mongodb-supervisor.git
1.旧方案(尝试过多次用centos安装MongoDB,但都已失败告终,最终使用ubuntu安装MongoDB并且启动成功)
Dockerfile:
FROM ubuntu:12.04MAINTAINER aaron "aaron.docker@gmail.com"RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 && \ echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' > /etc/apt/sources.list.d/mongodb.list && \ apt-get update && \ apt-get install -y mongodb-org && \ rm -rf /var/lib/apt/lists/*VOLUME ["/data/db"]CMD ["mongod"]EXPOSE 27017EXPOSE 28017
运行方式:
docker run -d -p 27017:27017 -v localdir:/data/db --name mongodb aarongo/ubuntu-mongodb#-v 选项将主机中的目录挂载到容器中
运行测试:
此方法最大的弊端是在运行镜像的时候不能进行实时的管理MongoDB并且不能同时启动多个服务进程
2.新方案(使用centos进行MongoDB的安装,并且进行ssh的配置,使镜像启动时应用supervisor同时启动ssh、MongoDB)
Dockerfile:(以之前构建的centos-ssh-supervisor镜像为基础)
FROM aarongo/centos-ssh-supervisor:latestMAINTAINER aaron "aaron.docker@gmail.com"#Install mongodbRUN yum -y install wget && yum -y install tar &&\ wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-2.6.4.tgz &&\ tar xzvf mongodb-linux-x86_64-2.6.4.tgz &&\ mv mongodb-linux-x86_64-2.6.4/ /mongodb &&\ mkdir -p /data/dbCOPY supervisord.conf /etc/supervisord.confVOLUME ["/data/db"]EXPOSE 22 27017 28017CMD ["/usr/bin/supervisord"]
运行方式:
docker run -p 1026:22 -p 27017:27017 -p 28017:28017 -it -v hostdir:/data/db aarongo/centos-mongodb-supervisor
运行测试:
此方法完美解决了单独容器不能启动多个服务的问题,并且可实现实时的对镜像进行管理
0 0
- Docker使用supervisor启动MongoDB
- Docker使用supervisor启动Mysql
- Docker使用supervisor构建solr
- Docker中使用supervisor管理开机自启动(redis && sshd)
- Docker 中使用 MongoDB
- supervisor + docker 终于找到为啥提示name被使用了
- Using Supervisor with Docker
- Using Supervisor with Docker
- docker--supervisor、compose.pdf
- supervisor监控mongoDb
- supervisor 监控redis & mongodb
- supervisor使用
- supervisor 使用
- linux 下使用supervisor管理源码启动的openerp
- Docker技术剖析--Supervisor管理
- 安装启动 Supervisor
- supervisor后台启动shadowsocks
- storm启动supervisor源码分析-supervisor.clj
- java配置dbcp连接池,经过反复测试
- UVA 10382
- iOS基础6:NSFileManager文件总管
- Docker使用supervisor构建solr
- phpExcel 读取excel和csv格式
- Docker使用supervisor启动MongoDB
- magento admin密码不记得了怎么办呢?
- 把smarthome编译进内核
- Safari浏览器显示PHP文件中文出现乱码解决方案
- validform表单验证插件最终版
- 一次“艰难”的改写网页:正所谓平时写的少,用时干着急啊!
- Uva-232 - Crossword Answers
- SQL基础日记
- 路由器转发