pycharm遠程連接docker開啓debug操作--docker開啓22號端口

  1. Add port projection in docker-compose.yml:
    ports:
    - 8080:8080
    - "10022:22"

  2. Start docker:
    docker-compose up

  3. Attach to working container:
    docker exec -it kdba-console bash

  4. 安裝openssh-server並啓動

apt-get install openssh-server
啓動之前需手動創建/var/run/sshd,不然啓動sshd的時候會報錯
mkdir -p /var/run/sshd
sshd以守護進程運行
/usr/sbin/sshd -D &
安裝netstat,查看sshd是否監聽22端口
apt-get install net-tools
netstat -apn | grep ssh

  1. 安裝完成以後需要配置ssh服務

配置在docker container中完成

將Root的密碼修改爲test:

echo 'root:test' | chpasswd

允許使用root身份登錄:

sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
echo "export VISIBLE=now" >> /etc/profile12345678

  1. 配置好ssh服務之後重啓ssh服務

service ssh restart

第四步,測試docker container中ssh服務端口在宿主機上的映射

此操作在宿主機
docker port <your container name> 22
此操作將查看docker container中端口22的映射
輸出結果如下所示
0.0.0.0:10022
表明只要ssh鏈接宿主機的8022端口,實際是鏈接docker container中的22端口

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章