Linux 实战 Docker 容器安装 MongoDB,阿里 Docker 镜像仓库加速

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: Docker是最流行的开源容器工具,互联网公司大规模集群部署和运维的利器,思想起源于Linux系统的Container思想。本文我们会使用Docker实战MongoDB数据库。


1.png

作者:徐雷frank
Docker 提供了两个版本:社区版 (CE) 和企业版 (EE)。
Docker 社区版 (CE) 是开发人员和小型团队开始使用 Docker 并尝试使用基于容器的应用的理想之选。
Docker CE 有两个更新渠道,即 stable 和 edge:
Stable 每个季度提供可靠更新;
Edge 每个月提供新功能更新。一般我们选择stable可以了,本文实战选择也是。
在2016年10月13日,杭州·云栖大会上,Docker与阿里云宣布达成战略合作,Docker的中国镜像仓库由阿里巴巴提供,国内开发者可以免费使用。
今天我们的演示也使用阿里云Docker仓库。我们选择的是Linux Ubuntu 16.04系统。

1、安装首先安装传输加密组件,然后来下载docker

sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
2.png

2、安装阿里云docker 安全协议GPG证书

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

3、仓库写入软件源信息,选择stable版本

sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
3.png

4、更新资源列表,安装新版本Docker-CE,社区版本。

sudo apt-get -y update
sudo apt-get -y install docker-ce
4.png

5、检查Docker版本,是否成功安装

输入docker version命令,可以查看安装的Docker版本信息。
5.png

6、运行Docker Hello World

最简单的例子就是 Hello world,docker会从服务器拉去hello world镜像,并且在本地运行。
sudo docker run hello-world
6.png

Docker安装成功,并且可以执行最简单的镜像,入门例子。下面开始安装特殊的镜像,Mongodb作为例子。

7、Docker实战安装MongoDB

Mongodb是NoSQL排名第一的数据库,在互联网、物联网、大数据领域广泛使用。欢迎大家参加MongoDB中国的技术大会,也欢迎收看我在阿里云大学的MongoDB高级课程和认证。
《阿里巴巴MongoDB4.0高级实战:基于Java Spring Boot》阿里巴巴技术大牛 资深专家P9叶翔、特邀讲师徐雷
阿里云大学官方网站 https://edu.aliyun.com/workshop/3/course/1044
《阿里巴巴Java和MongoDB认证》基于最新Java Spring Boot和MongoDB 阿里云大学官方网站https://edu.aliyun.com/certification/cldc14
使用Docker安装mongodb,先使用Docker search mongo搜索服务器上的可用镜像,执行pull拉去操作即可。。
7.png

星星最多的5000多棵,评价最高,就选择第一个,Official 代表是否官方发布的镜像。选择第一个是官方的mongodb镜像。
输入docker pull mongo命令,下载mongodb镜像
8.png

多线程多任务并行下载文件。等待完成。
9.png

8、Docker运行MongoDB

输入docker images

查看本地下载的镜像文件,发现mongo已经下载完毕,可以运行。

docker运行mongodb,可以指定参数,docker的参数,以及mongodb的控制参数,比如数据位置、端口,内存大小,以及安全模式等。
sudo docker run --name hello-mongodb-docker -d -p 27017:27017 -v ~/data:/data/db mongo

10.png

9、使用mongodb客户端连接测试

这里我们可以使用命令客户端mongo连接运行的mongodb.
sudo install mongo-clients.
11.png

因为mongodb使用的端口是27017,所以直接使用mongo客户端连接即可。
12.png


证明已经可以正常连接docker容器安装启动的mongodb数据库

10、Docker容器停止mongodb数据库

要停止已经启动的服务,可以使用运行的镜像程序的名字或者id停止。
13.png

这样就可以停止已经启动的服务。Docker除了使用已经发布的镜像,我们自己也可以i 制作镜像,但是常用的命令,search、pull、run、Stop、足够,大家也可以查看官方文档获取最新的说明。

参考:

https://docs.docker.com/samples/library/mongo/
https://docs.mongodb.com/manual/tutorial/install-mongodb-enterprise-with-docker/

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
6天前
|
弹性计算 运维 持续交付
探索Docker容器化技术及其在生产环境中的应用
探索Docker容器化技术及其在生产环境中的应用
35 5
|
1天前
|
负载均衡 网络协议 开发者
掌握 Docker 网络:构建复杂的容器通信
在 Docker 容器化环境中,容器间的通信至关重要。本文详细介绍了 Docker 网络的基本概念和类型,包括桥接网络、宿主网络、覆盖网络和 Macvlan 网络等,并提供了创建、管理和配置自定义网络的实用命令。通过掌握这些知识,开发者可以构建更健壮和灵活的容器化应用,提高应用的可扩展性和安全性。
|
1天前
|
运维 Ubuntu Linux
深入理解并实践Docker容器化技术
深入理解并实践Docker容器化技术
21 6
|
6天前
|
运维 Docker 微服务
掌握 Docker Compose:简化你的多容器应用部署
在微服务架构和容器化技术普及的今天,管理多容器部署变得颇具挑战。Docker Compose 通过一个 YAML 文件定义和运行多容器应用,简化了部署和运维。本文介绍其基本概念、使用方法及优势,包括服务、项目、卷和网络等核心概念,并提供从安装到管理服务的详细步骤,助你轻松掌握 Docker Compose,提高开发效率和应用运维质量。
|
7天前
|
Cloud Native 持续交付 Docker
探索Docker容器化技术及其在软件开发中的应用
探索Docker容器化技术及其在软件开发中的应用
17 7
|
4天前
|
Prometheus 监控 Cloud Native
docker安装prometheus+Granfan并监控容器
【9月更文挑战第14天】本文介绍了在Docker中安装Prometheus与Grafana并监控容器的步骤,包括创建配置文件、运行Prometheus与Grafana容器,以及在Grafana中配置数据源和创建监控仪表盘,展示了如何通过Prometheus抓取数据并利用Grafana展示容器的CPU使用率等关键指标。
|
6天前
|
Cloud Native 持续交付 Docker
探索容器化技术Docker的奥秘
探索容器化技术Docker的奥秘
23 3
|
27天前
|
运维 监控 NoSQL
【MongoDB 复制集秘籍】Secondary 同步慢怎么办?深度解析与实战指南,让你的数据库飞速同步!
【8月更文挑战第24天】本文通过一个具体案例探讨了MongoDB复制集中Secondary成员同步缓慢的问题。现象表现为数据延迟增加,影响业务运行。经分析,可能的原因包括硬件资源不足、网络状况不佳、复制日志错误等。解决策略涵盖优化硬件(如增加内存、升级CPU)、调整网络配置以减少延迟以及优化MongoDB配置(例如调整`oplogSize`、启用压缩)。通过这些方法可有效提升同步效率,保证系统的稳定性和性能。
39 4
|
1月前
|
监控 NoSQL MongoDB
MongoDB数据库的索引管理技巧
【8月更文挑战第20天】MongoDB数据库的索引管理技巧
42 1
|
1月前
|
监控 NoSQL MongoDB
mongodb数据库 使用技巧
【8月更文挑战第20天】mongodb数据库 使用技巧
34 1

相关产品

  • 容器镜像服务