如何使用 ssh 连接获取卷数据

how to get volume data using ssh connection

我正在尝试从远程服务器中提取 docker 卷数据。现在我的 docker 卷数据在我的本地机器上。但我想让每个人都可以使用这些数据。所以我将 docker 卷文件复制到服务器。如何在撰写文件中显示此服务器上我的 docker 卷数据的文件路径?喜欢;

docker-compose.yml

version: '3.2'

services:
  jira:
    container_name: jira-software_8.3
    image: atlassian/jira-software:8.3

    volumes:
      # How to get volume data using ssh connection
      - <user_name>@<server_ip>:<server_path>:<container_path>

    ports:
      - '8080:8080'
    environment:
      - 'JIRA_DATABASE_URL=postgresql://jira@postgresql/jira_db'
      - 'JIRA_DB_PASSWORD=docker'

volumes:
  jira_data:
    external: false

您无法挂载远程服务器文件和文件夹,docker 在本地上下文中寻找挂载。

所以目前的工作是在 运行 时间内复制并将目录挂载到容器中。

scp -r -i yourkey.pem  centos@host.example.com:/home/centos/backup ./app/ && docker run --rm -it -v $PWD/app:/app alpine ash -c "ls /app"

您当前的docker-撰写

    volumes:
      # How to get volume data using ssh connection

因为你不能绑定- <user_name>@<server_ip>:<server_path>:<container_path>

scp -r -i yourkey.pem  centos@host.example.com:/home/centos/backup ./app/ && docker run --rm -it -v $PWD/app:/app alpine ash -c "ls /app"

下面会破坏你的 docker-compose

    volumes:
      # How to get volume data using ssh connection
      - <user_name>@<server_ip>:<server_path>:<container_path>

更新 docker-compose 文件

    volumes:
      - ./app/:/app/

然后运行 docker-像

一样编写命令
scp -r -i yourkey.pem  centos@host.example.com:/home/centos/backup ./app/ && docker-compose up