博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用 mongodb 的 Docker Image 快速上手系列 lab
阅读量:6837 次
发布时间:2019-06-26

本文共 3657 字,大约阅读时间需要 12 分钟。

Docker 主要的概念

Dockerfile => 用來產生 docker image 用的(介紹)

Image => 可以用來產生 docker container

Container => 實際上在 run 我們想要的 service

Docker pool (類似 git hub 的概念https://hub.docker.com/

常用的指令:

docker command

docker images # 列出目前本地端有抓好哪些 docker image

 

docker ps # 列出目前正在運行中的 docker container

 

docker ps -a # 列出目前本地端一共有哪些 docker container (包含已經停止運行的)

 

docker pull [image_name:version] # docker hub 下載一個特定版本的 docker image

 

docker pull [image] # docker hub 下載最新版本的 docker image

 

docker run [image] # docker image 建立一個 docker container 並且運行

 

docker start [container] # 啟動 docker container

 

docker stop [container] # 停止 docker container

例如

# mongo db 版本 3.3 docker image 給抓下來

 

$ docker pull mongo:3.3

# mongo db 最新版本的 docker image 給抓下來

 

$ docker pull mongo

pull Image 的狀態

pajace@ubuntu-server:~/mongo_db/3.2$ docker pull mongo:3.1

3.1: Pulling from library/mongo

8dddc0afbe0a: Downloading [====> ] 3.06 MB/37.19 MB

a3ed95caeb02: Download complete

32eed1053be0: Download complete

da7450003e70: Download complete

da146c968d58: Downloading [===============> ] 365.1 kB/1.168 MB

75ce455f57bd: Waiting

f1fac483f3f6: Waiting

dc616cc81177: Waiting

2b7ade65468e: Waiting

03913f2c5b05: Waiting

當完成的時候

pajace@ubuntu-server:~/mongo_db/3.2$ docker pull mongo:3.1

3.1: Pulling from library/mongo

8dddc0afbe0a: Pull complete

a3ed95caeb02: Pull complete

32eed1053be0: Pull complete

da7450003e70: Pull complete

da146c968d58: Pull complete

75ce455f57bd: Pull complete

f1fac483f3f6: Pull complete

dc616cc81177: Pull complete

2b7ade65468e: Pull complete

03913f2c5b05: Pull complete

Digest: sha256:bb3388e777b5d42c3d51370d2dcf2b1bd045b7169cf5e9373d6ef3bd56d9e78a

Status: Downloaded newer image for mongo:3.1

抓下來之後可以用 docker images 可以列出目前有哪些 Image

顯示目前有哪些 image local

pajace@ubuntu-server:~/mongo_db/3.2$ docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

mongo-express latest 11b1889462fa 3 weeks ago 252.3 MB

mongo 3.3.6 83370cc968c1 3 weeks ago 342.9 MB

mongo 3.2 4244d33b9b0e 3 weeks ago 313.1 MB

接下來就讓我們來建立一個 Container 並執行它,會用到的參數如下:

-d 讓這個 container 背景執行模式

-v 掛資料夾
-p
綁定 container port localhost
--name
設定一個名字給這個 container
...
當然還有很多 請參考

建立並執行 mongodb docker container

# 建立並運行 mongodb docker container

 

$ docker run -d --name mongodb_3.3 -p 27017:27017 mongo:3.3.6

078e7112aa59050297e4f2ab5b3fa322e91a217226dece11aafc06f521e6ab5f

 

# 建立 mongo-express 並且連結到 剛剛建立的 mongodb docker container

 

$ docker run -d --name mongodb_web_336 --link mongodb_3.3:mongo -p 8081:8081 mongo-express

ac7f52660d4b661e14fb832ae2f8655702b8410b56de7d7f2bb74e2196898d4b

 

# 查看目前正在運行的 docker container

 

$ docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

ac7f52660d4b mongo-express "tini -- node app" 3 seconds ago Up 2 seconds 0.0.0.0:8081->8081/tcp mongodb_web_336

078e7112aa59 mongo:3.3.6 "/entrypoint.sh mongo" 2 minutes ago Up 2 minutes 0.0.0.0:27017->27017/tcp mongodb_3.3

 

Windows Mac 需要 port mapping, Ubuntu 上則不用

因為在 Windows 上,Docker run 在一個 virtual machine 上面,所以需要做一下 port mapping, 好將 virtual machine 上的 port 導到 localhost 上面來

 

Unfortunately, the mechanism VirtualBox uses to share folders between the host system and the Docker container is not compatible with the memory mapped files used by MongoDB (see vbox bug, docs.mongodb.org and related jira.mongodb.org bug). This means that it is not possible to run a MongoDB container with the data directory mapped to the host.

因此在 Windows Mac 上無法使用 -v /some_path/:/data/db 這個參數

當我們使用 docker run 建立並執行一個 container 之後,就可以使用 docker start  docker stop 來啟動或停止這個 contaner, 也可以任意的切換目前正在使用的 MongoDB.

啟動 container

$ docker stop BookServerMongoDB_3.3

$ docker start BookServerMongoDB_3.3

 

 

来自:

转载于:https://www.cnblogs.com/time-is-life/p/7754592.html

你可能感兴趣的文章
Tokyo Tyrant基本规范(4)--协议
查看>>
【Go语言】【14】GO语言的接口类型
查看>>
配置CAS应用客户端
查看>>
摘抄--apache工作模式详解
查看>>
更改sybase下设备名
查看>>
不少朋友在安装IDES 4.71的过程中都遇到了下面的出错提示:
查看>>
企业的人性和狼性
查看>>
mySQL教程 第10章 事务和锁
查看>>
Hello, Kafka World
查看>>
Exchange 2010和Exchange 2016共存部署-10:配置多域名证书
查看>>
SFB 项目经验-03-共存迁移-Lync 2013-TO-SFB 2015-完成
查看>>
F5 配置手册 -F5 BIG-IP 10.1-2-配置-基本参数
查看>>
《统一沟通-微软-实战》-6-部署-2-中介服务器-1-定义中介服务器
查看>>
虚拟化,可实现国产化替代
查看>>
PowerShell通过安全组创建计算机账号
查看>>
Linux LVM逻辑卷配置过程详解(创建,增加,减少,删除,卸载)
查看>>
《兵临城下》:360输在“斯大林格勒”?
查看>>
《塞洛特傳說》道具系统
查看>>
MCollective架构篇4-MCollective各种插件的部署及测试
查看>>
第五章 Python函数你知多少
查看>>