golang+linux+docker+mongdb连接过程(一)
golang简介:Go最早并不是一个Google的正式项目,而是作为一个"20%"的项目出现的,直到2009年才以开源的方式面向大众,目前go team有稳定的发布周期,大约半年一个新的版本.Go语言的出身可以说非常豪华,最早对go语言的讨论是由罗伯特·格瑞史莫、罗伯·派克和肯·汤普逊发起的,主要是为了解决c++中出现的问题而发起的项目。肯·汤普逊是c语言和unix的发明者,罗伯特·格瑞史...
golang简介:
Go最早并不是一个Google的正式项目,而是作为一个"20%"的项目出现的,直到2009年才以开源的方式面向大众,目前go team有稳定的发布周期,大约半年一个新的版本.
Go语言的出身可以说非常豪华,最早对go语言的讨论是由罗伯特·格瑞史莫、罗伯·派克和肯·汤普逊发起的,主要是为了解决c++中出现的问题而发起的项目。肯·汤普逊是c语言和unix的发明者,罗伯特·格瑞史莫参与设计了Java的HotSpot虚拟机和Chrome浏览器的JavaScript V8引擎,罗博·派克在大名鼎鼎的bell lab多年,参与了Plan9操作系统、C编译器以及多种语言编译器的设计和实现。
Go语言从2009年开源到现在吸引了很多开发者的注意,分别获得了2009年和2016年的TIOBE之星,如果说2009年那一次是因为Google的影响,那2016年这一次绝对是自身实力的厚积薄发。
为什么需要一个新的语言:
传统的语言比如c++,大家花费太多时间来学习如何使用这门语言,而不是如何更好的表达写作者的思想,同时编译花费的时间实在太长,对于编写-编译-运行这个链条来说周期太长。动态语言如Python,由于没有强类型的约束,很多问题需要在运行时发现,这种低级错误更应该交给编译器来发现。
同时有如下趋势:
- 人力成本越来越高
- 机器越来越便宜
- 机器的性能越来越厉害
- 在开发效率和运行速度上达到平衡
- 这就是go诞生的背景。
docker简介:
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
而且docker正是golang语言编写。
mongodb简介:
NoSQL(Not Only SQL ),意即“不仅仅是SQL” ,指的是非关系型的数据库 。是一项全新的数据库革命性运动,早期就有人提出,发展至2009年趋势越发高涨。NoSQL的拥护者们提倡运用非关系型的数据存储,相对于铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入。
关系型数据库中的表都是存储一些结构化的数据,每条记录的字段的组成都一样,即使不是每条记录都需要所有的字段,但数据库会为每条数据分配所有的字段。而非关系型数据库以键值对(key-value)存储,它的结构不固定,每一条记录可以有不一样的键,每条记录可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销
coding:MacOs
mongodb:Vm虚拟机 下 CentOS 下 Docker 安装mongodb
linux远程管理工具: Terminal ssh 用户名@linux地址 例: ssh root@192.168.1.1
关于linux的安装不做介绍
关于Docker安装不做介绍:https://www.runoob.com/docker/centos-docker-install.html
首先查找我们需要的mongodb的images
这里使用 命令查找一个 star 数量较高的
docker search --format "{{.Name}}: {{.StarCount}}" mongo
详情查看官方文档:https://docs.docker.com/engine/reference/commandline/search/
也可以使用官网docker hub进行查找:https://hub.docker.com/search?q=mongo&type=image
可以看到与搜索结果一一对应。
点进去左侧有提示pull mongo的命令:
使用命令下载
mongodb的 images:docker pull mongo
之后等待等待完成输入命令查看:
docker images
之后使用命令创建mongo文件夹以及 db文件夹:
mkdir -p /usr/local/mongo /usr/local/mongo/db
使用命令运行容器:
docker run -p 27017:27017 -v $PWD/db:/data/db -d mongo
命令说明:
-p 27017:27017 :将容器的27017 端口映射到主机的27017 端口
-v $PWD/db:/data/db :将主机中当前目录下的db挂载到容器的/data/db,作为mongo数据存储目录
查看容器启动情况:
docker ps
进入我们的mongo容器:
docker exec -it 0990ff1154b0 mongo admin
此时证明mongodb已经安装成功。
更多推荐
所有评论(0)