КІРУ
    opened image

    sFTP арқылы Docker контейнеріне қосылу, контейнер ішіндегі файлдармен жұмыс жасаушыларға көмек көрсету үшін пайдалы болуы мүмкін. Мысалы, веб-қолданбаны дайындаушысы болып, сіз серверге файлдарды жүктеу керек болса, сіз сіздің дайындау мәліметтерінің ішінен контейнерге sFTP арқылы қосылып, файлдарды серверге жүктеу мүмкіндігініз бар.
    Қосымша, Docker контейнеріне sFTP арқылы қосылу кезінде, файлдарды басқару үшін сіз sFTP-нің көптеген функцияларын пайдалану мүмкін. 



    sFTP арқылы Docker контейнерін орнату.



    sFTP арқылы Docker контейнеріне қосылу үшін алдымен, қашандағы серверде іске қосылатын контейнерді жасау қажет. Бұл үшін docker run командасын пайдалану мүмкін. Мысалы, nginx контейнерін 2222 портында іске қосу және OpenSSH орнату үшін келесі командаларды пайдалануға болады:
     

    docker run -d -p 2222:22 --name nginx_latest nginx

     

    docker exec -it nginx_latest apt-get update

     

    docker exec -it nginx_latest apt-get install -y openssh-server



     

    Бұл командалар жаңа nginx_latest атауы бар контейнерді, Nginx ның суретін негізінде жасайды және контейнер ішінде OpenSSH орнатады. 



    Таңдаған пайдаланушы үшін құпия сөзді орнату.

    Таңдаған пайдаланушы үшін құпия сөзді орнату үшін, келесі команданы орындаңыз:

     

     

     

    docker exec -it nginx_latest passwd root

     


    Құпия сөзді екі рет енгізіңіз.
     


     

     

    • Контейнер ішіндегі /etc/ssh/sshd_config файлын редакциялаңыз, PermitRootLogin without-password орнатуын PermitRootLogin yes ретінде ауыстырыңыз. Оны қосылу және редакциялау үшін келесі команданы пайдаланыңыз:

     

    docker exec -it nginx_latest bash


     

    Сіздің таңдаушыңыз болатын редакторды пайдаланыңыз. Ол жоқ болса, оны орнатыңыз.



     

     

    • ssh-серверді қайта іске қосу үшін келесі команданы орындаңыз:

     

     

    /etc/init.d/ssh restart



     

    IP арқылы Docker контейнеріне қосылу sFTP арқылы.




    Бұл үшін контейнердің IP мекен-жайын және SSH-сервері іске қосылатын портын анықтау қажет. Бұларды docker inspect командасын пайдаланып алуға болады. Мысалы, контейнер 2222 портында іске қосылса, IP мекен-жайын алу үшін келесі команданы пайдалануға болады:

     

     

     

    docker inspect --format '{{ .NetworkSettings.IPAddress }}' nginx_latest
    

     




     

    Бұл команда контейнердің IP мекен-жайын қайтарады. Сонымен қатар, контейнер ішінде орнатылған пайдаланушы мәліметтерін пайдалану арқылы sFTP арқылы контейнерге қосылу мүмкін. Мысалы, sftp командасы арқылы:

     

     

     

     

    sftp [email protected]
    

     


     

    Мұнда root - контейнер ішінде орнатылған пайдаланушының аты, ip-address - контейнердің IP мекен-жайы (172.17.0.4), docker inspect командасы арқылы алынған.




     

    FileZilla арқылы қосылу.

     

    1. Мәзірде "Файл" мәзірінде "Сайттарды басқару" таңдаңыз ("Ctrl+S" пернесін пайдаланыңыз).

    2. "Сайттарды басқару" терезесінде "Жаңа сайт" түймесін басыңыз және сайттың атын енгізіңіз.
    3. "Хост", "Порт", "Пайдаланушы аты" және "Құпия сөз" жолағында Docker контейнерінің мәліметтерін пайдаланып, сәйкес келетін мәндерді енгізіңіз. Әдепкі түрде, пайдаланушының аты - "root", порт - "2222".
    4. "Протокол" тізімінен "SFTP - SSH File Transfer Protocol" таңдаңыз.
    5. "Қосылу" түймесін басыңыз. Егер барлық параметрлер дұрыс болса, сіз FileZilla арқылы sFTP клиенті арқылы Docker контейнеріне қосыласыз.

     


     

     

    Қазір сіз Docker контейнеріне sFTP арқылы қосыласыз, файлдарды жіберіп, басқа файл операцияларын орындай аласыз.