在 Digital ocean docker 用户名和密码错误中使用 Github 操作进行部署

Deploying using Github actions in Digital ocean docker username and password error

在我的本地 PC 上,我能够使用

成功地通过 SSH
me@ubuntu:~$ ssh -o StrictHostKeyChecking=no root@147.182.255.130 whoami
root

当我将代码推送到 github 时,出现以下错误 pm github actions

Run scp  -o StrictHostKeyChecking=no -r ./.env ./docker-compose.prod.yml root@***:/app
  scp  -o StrictHostKeyChecking=no -r ./.env ./docker-compose.prod.yml root@***:/app
  ssh -o StrictHostKeyChecking=no root@*** << 'ENDSSH'
    cd /app
    source .env
    docker login ghcr.io -u $NAMESPACE -p $PERSONAL_ACCESS_TOKEN
    docker pull $WEB_IMAGE
    docker pull $NGINX_IMAGE
    docker-compose -f docker-compose.prod.yml up -d
  ENDSSH
  shell: /usr/bin/bash -e {0}
  env:
    WEB_IMAGE: ghcr.io/$(echo $GITHUB_REPOSITORY | tr '[:upper:]' '[:lower:]')/web
    NGINX_IMAGE: ghcr.io/$(echo $GITHUB_REPOSITORY | tr '[:upper:]' '[:lower:]')/nginx
    SSH_AUTH_SOCK: /tmp/ssh_agent.sock
Warning: Permanently added '***' (ECDSA) to the list of known hosts.
Permission denied, please try again.
Permission denied, please try again.
root@***: Permission denied (publickey,password).
lost connection
Error: Process completed with exit code 1.

这是我在 docker 数字海洋

上的 /etc/ssh/sshd_config
PermitRootLogin yes
PasswordAuthentication yes
PubkeyAuthentication yes
ChallengeResponseAuthentication no
UseLogin yes
UsePAM yes
X11Forwarding yes
PrintMotd no
AcceptEnv LANG LC_*
Subsystem sftp  /usr/lib/openssh/sftp-server

并重新启动

sudo systemctl reload sshd
sudo service ssh restart

如果您需要更多文件或文件夹或信息,请告诉我

尝试以下操作:

cat ~/.ssh/id_rsa.pub

并将public键复制到

nano ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
chmod 600 ~/.ssh/id_rsa