Loading... 要在Docker中安装MongoDB并确保数据、日志和配置文件的持久化,我们就得像个巧匠一样,精准地搭建我们的数据小屋。以下是把MongoDB嵌入Docker容器的“施工方案”。 首先,你得有Docker这个神奇的工具箱。考虑到我们是严肃的“施工队”,我们得跳过开箱仪式,直接拿起“工具”。 1. **拉取MongoDB镜像** 打开你的命令行界面,像呼唤一位老朋友一样,喊出: ```sh docker pull mongo ``` 这会从Docker Hub的架子上取下最新版的MongoDB容器。 2. **创建持久化存储** 我们需要为MongoDB准备三个持久化舞台:数据、日志和配置。 - **数据盘**:你的宝贵数据将在这里闪闪发光,无论风吹雨打。 ```sh mkdir -p /my/own/datadir ``` - **日志本**:MongoDB的日记本,它会记录下它每天的喜怒哀乐。 ```sh mkdir -p /my/own/logdir ``` - **配置册**:MongoDB的心得笔记,它里面有运行的秘诀。 ```sh mkdir -p /my/own/confdir echo 'systemLog:' > /my/own/confdir/mongod.conf echo ' destination: file' >> /my/own/confdir/mongod.conf echo ' path: "/var/log/mongodb/mongod.log"' >> /my/own/confdir/mongod.conf echo ' logAppend: true' >> /my/own/confdir/mongod.conf echo 'storage:' >> /my/own/confdir/mongod.conf echo ' dbPath: "/data/db"' >> /my/own/confdir/mongod.conf echo 'net:' >> /my/own/confdir/mongod.conf echo ' port: 27017' >> /my/own/confdir/mongod.conf echo ' bindIp: "0.0.0.0"' >> /my/own/confdir/mongod.conf ``` 3. **搬运MongoDB镜像到新家** 现在我们得将MongoDB“搬进”我们刚准备好的存储空间里。我们要告诉Docker,用我们的命令行起重机怎样来搞定这件事: ```sh docker run --name some-mongo -v /my/own/datadir:/data/db -v /my/own/logdir:/var/log/mongodb -v /my/own/confdir:/etc/mongo -d mongo --config /etc/mongo/mongod.conf ``` 这串咒语的意思是:Docker,拿起这个MongoDB的盒子(``docker run --name some-mongo``), 将我的数据盘(`/my/own/datadir:/data/db`), 日志本(`/my/own/logdir:/var/log/mongodb`), 配置册(`/my/own/confdir:/etc/mongo`)装进MongoDB的房子里面去,并用我的配置册启动它(``--config /etc/mongo/mongod.conf``)。 4. **检查MongoDB的新家是否安静舒适** 如果你跟着指南一步步来,MongoDB现在应该已经在它的新家里安定下来。你可以通过以下命令来偷偷窥探下它是否开心: ```sh docker logs some-mongo ``` 如果看到它在日志里唱歌(也就是打印出启动日志),那说明我们的巧手搬运是成功的! 现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。 #### [云服务器/高防CDN推荐](https://www.tsyvps.com/) #### [蓝易云](https://www.tsyvps.com/)国内/海外高防云服务器推荐 <div class="preview"> <div class="post-inser post box-shadow-wrap-normal"> <a href="https://www.tsyvps.com" target="_blank" class="post_inser_a no-external-link no-underline-link"> <div class="inner-image bg" style="background-image: url(https://www.8kiz.cn/img/6.png);background-size: cover;"></div> <div class="inner-content" > <p class="inser-title">蓝易云-五网CN2服务器【点我购买】</p> <div class="inster-summary text-muted"> <span style='color: red;'>蓝易云采用KVM高性能架构,稳定可靠,安全无忧!<br>蓝易云服务器真实CN2回国线路,不伪造,只做高质量海外服务器。</span> </div> </div> </a> <!-- .inner-content #####--> </div> <!-- .post-inser ####--> </div> --- **<span style='color:#000000'>海外免备案云服务器链接:[www.tsyvps.com](https://www.tsyvps.com)</span>** **<span style='color:#000000'>蓝易云安全企业级高防CDN:[www.tsycdn.com](https://www.tsycdn.com)</span>** **<span style='color:#DC143C'>持有增值电信营业许可证:B1-20222080【资质齐全】</span>** **<span style='color:#DC143C'>蓝易云香港五网CN2 GIA/GT精品网络服务器。拒绝绕路,拒绝不稳定。</span>** --- #### **百度搜索:[蓝易云](https://www.baidu.com/s?ie=UTF-8&wd=%E8%93%9D%E6%98%93%E4%BA%91)** 最后修改:2023 年 11 月 24 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏