Docker簡易版:使用更少擊鍵執行Redis,MongoDB
你可能遇到這樣的場景:開發軟體時,像資料庫和訊息系統(messaging system)等其它服務也必須起起來。通常這些服務可能安裝在開發者本人的機器上或者執行在虛擬機器裡。而最近圍繞Docker的活動證明,它是一個有趣的可替代方案。使用Docker和一個叫dock的小工具,你可以短時間內啟動所有開發環境所需要的服務。
你不知道Docker是什麼?沒問題。使用dock,你不需要真正瞭解Docker。你只需要安裝好Docker。我同事Lukas Pustina寫了一篇部落格更詳細的介紹Docker。
介紹
想象一下,你想快速開發一個原型,同時需要一個MongoDB執行在本地。使用dock,啟動這個服務是輕而易舉。只要輸入dock mongodb,就好了。或者輸入dock redis來啟動Redis如何?dock使程式設計師樂於簡單而快速的啟動各種隔離的服務。你也可以執行像以下列表這樣更多,更復雜的步驟:
$ dock redis jenkins sonar
Starting redis (using /Users/ben/.dock-formulas/formulas/redis)
Container started
Name: redis
IP: 192.168.59.103
Ports: 6379
Starting jenkins (using /Users/ben/.dock-formulas/formulas/jenkins)
Container started
Name: jenkins
IP: 192.168.59.103
Ports: 8472
Starting sonar (using /Users/ben/.dock-formulas/formulas/sonar)
Container started
Name: sonar-mysql
IP: 192.168.59.103
Ports: 3306
Container started
Name: sonar-server
IP: 192.168.59.103
Ports: 8474
dock底層使用的是Docker。Docker本身是很強大的,dock使其變得更通用。dock加入了一個規則機制(formula mechanism),目標是開發者需要的本地開發環境。如果沒有這個規則機制,你必須知道如何啟動容器,使用哪個映象,開放哪些埠。dock致力於讓開發者只需要知道服務的名字。規則在GitHub上維護,通過pull request,其他開發者可以自行擴充套件。如果你需要的服務不包含在內,請發pull request或issue.
dock允許你在不同的規則之間遷移。你可以在執行dock時加上—cat引數來列印規則的詳細資訊。這些資訊包括dock執行了哪些Docker命令。通過些資訊學習Docker或者作為你能力的提高點。
安裝
dock託管在GitHub上,是一個shell指令碼。安裝很簡單,只需要下載指令碼,然後將它加入到你的$PATH路徑下。OS X使用者可通過Homebrew安裝,當然,你首先要安裝Docker。
# as an OS X user with Homebrew
brew tap bripkens/dock
brew install dock
# for other platforms (assuming ~/bin is on your $PATH)
curl https://raw.githubusercontent.com/bripkens/dock/master/dock -so ~/bin/dock &&
chmod +x ~/bin/dock &&
dock -u &&
echo "dock installation successful. Try running `dock’"
總結
Docker有很大潛力,而dock讓它更易於使用。dock對你進行原型設計或學習新技術時很有幫助,當然,你也可以將它作為日常的基礎設施。目前dock支援的服務還很少,但是它很容易擴充套件。告訴我你需要的任何服,或者發pull request來幫助。
相關文章
- docker 執行redisDockerRedis
- Docker極簡入門:使用Docker執行Java程式DockerJava
- Docker簡易版教程——通俗易懂Docker
- docker執行golang可執行檔案最簡docker-compose fileDockerGolang
- 簡易執行緒池實現執行緒
- C++簡易執行緒池C++執行緒
- 使用docker執行CentOS容器DockerCentOS
- 使用Docker 一鍵部署 LNMP+Redis 環境DockerLNMPRedis
- 使用普通使用者執行 dockerDocker
- 簡易多執行緒爬蟲框架執行緒爬蟲框架
- MongoDB和Redis的使用MongoDBRedis
- 使用Docker搭建MongoDB 5.0版本副本集叢集DockerMongoDB
- Docker極簡入門:使用Docker-Compose 搭建redis叢集DockerRedis
- express框架+mongodb簡易學生管理Express框架MongoDB
- 使用 Docker 搭建簡易的 Java Web 環境 (二)DockerJavaWeb
- Docker簡易安裝教程Docker
- Qwen2-VL-2B-Instruct 量化,使用更少的視訊記憶體執行Struct記憶體
- Docker極簡入門:使用Docker-Compose 執行網站瀏覽量統計DemoDocker網站
- docker安裝mongoDB及使用DockerMongoDB
- POSTMAN 單執行緒簡易刷星指令碼Postman執行緒指令碼
- 桌面端執行小程式的簡易實操
- 基於AOP和Redis實現的簡易版分散式鎖Redis分散式
- 簡易版管道模式模式
- 技能篇:docker的簡易教程Docker
- Docker常見命令---簡易教程Docker
- 打算使用 docker laradock 執行 phalcon 學習Docker
- 使用 Docker 部署 NodeJS + MongoDB 專案DockerNodeJSMongoDB
- 最簡單的docker教程:在docker裡執行nginx伺服器DockerNginx伺服器
- Java多執行緒之Executor框架和手寫簡易的執行緒池Java執行緒框架
- 使用Docker進行Redis主從複製實踐DockerRedis
- 在Windows上使用Docker 建立MongoDB 副本集的極簡方法(翻譯)WindowsDockerMongoDB
- OpenHarmony執行dockerDocker
- Docker執行命令Docker
- Docker 執行MySQLDockerMySql
- docker 執行 MySQLDockerMySql
- 《【面試突擊】— Redis篇》-- Redis的執行緒模型瞭解嗎?為啥單執行緒效率還這麼高?面試Redis執行緒模型
- 【Docker】Linux安裝Docker(極簡版)DockerLinux
- 簡易版 vue實現Vue
- 2019雲南行-簡易版