簡體   English   中英

在已部署的docker swarm容器中運行mongo腳本

[英]Run mongo script in deployed docker swarm container

我已經使用docker swarm部署了數據庫

docker stack deploy -c docker-compose.yml app

泊塢窗,compose.yml

version: '3.1'
services:
  database:
    image: mongo:latest

我想從部署的database容器中的主機運行JavaScript文件script.js

docker exec \
    app_database.1.$(docker service ps -f 'name=app_database.1' app_database -q) \
    mongo script.js

但是,容器中不存在文件script.js (僅在我的主機上)。 如何在不重新啟動database服務的情況下運行它?

可以在stdin上將腳本發送到mongo客戶端。

在本地創建腳本:

print('The mongodb version is: '+db.version())

然后跑

$ cat script.js | docker exec $container mongo --quiet
The mongodb version is: 3.6.3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM