rsync между двумя док-контейнером - PullRequest
0 голосов
/ 14 февраля 2019

Я устанавливаю резервное копирование / синхронизацию в сети Ubuntu с помощью rsync.

Предположим, что Desktop (Ubuntu 18.04) -ip: 10.0.0.13
Запуск докера с двумя контейнерами:

 Client_A: 2001 -> 22/tcp , 8001 -> 80/tcp  
 Client_B: 2002 -> 22/tcp , 8002 -> 80/tcp

Все 3 образа: Ubuntu, Apache2 установлен и работает

dir:

DesktopOS        Container1         Container2
10.0.0.13:80     10.0.0.13:8001     10.0.0.13:8002  
⊢var             ⊢var               ⊢var             
  ⊢www             ⊢www               ⊢www           
    ⊢html            ⊢html              ⊢html          
      ⊢1.txt           ⊢2.txt             ⊢3.txt   

все три txt могут быть доступны в браузере


Когда я пытаюсь получить 3.txt в Container1:

rsync -av -e 'ssh -p 2002' --rsh=ssh user@10.0.0.13/var/www/html/ ~/BACKUP/

1.txt получил.


Как получить доступ к 3.txt в Container1?

Пожалуйста, используйте IP-адрес, так как я имитирую реальную сеть, возможно 1 докерна 1 устройстве в реальном мире.

1 Ответ

0 голосов
/ 20 февраля 2019

Наконец я обнаружил, что установил только ssh, не устанавливает ssh-сервер.В противном случае брандмауэр блокирует доступ.

#find out port 22, 2002, 2001 etc. 
#from netstat result, is it listening?
netstat | grep 2002

Установите ssh-сервер

sudo apt install tasksel
sudo tasksel install openssh-server

для брандмауэра:

sudo ufw allow 2001,2002

и он решен, спасибо за ваших пациентов, которые пытаются ответить мне.

...