Tôi có môi trường Gitlab bằng Gitlab CI, cho một dự án mới để làm chứng về các tệp đã biên dịch và sao chép qua rsync đến máy chủ sản xuất.
Máy mà việc xây dựng các tài nguyên này được thực thi là hình ảnh của docker (nút 6), nhưng bây giờ tôi phải sao chép các tệp kết quả từ lệnh Docker container đó sang máy chủ bằng linux ... Vấn đề của tôi là kết nối qua ssh thông qua rsync.
Hiện tại tôi có những điều sau đây:
stages:
- deploy
before_script:
- npm i
- npm run build
job_deploy:
stage: deploy
script:
- ssh-keygen -t rsa -b 4096 -C '' -f ~/.ssh/deploy_rsa
- ssh-keyscan -H 8.8.8.8 >> ~/.ssh/known_hosts
- ssh-copy-id -i ~/.ssh/deploy_rsa.pub $SERVER_USER@8.8.8.8
- rsync -avuz $CI_PROJECT_DIR/dist/ $SERVER_USER@8.8.8.8:/var/wwww/example.com
only:
- master
Bằng cách này, tôi nhận được:
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password).
3
Cái gì đó của tôi không được nhấn mạnh ở đây: bạn đang tạo một khóa ssh mới khi mọi công trình không hoạt động? Đâu là điểm sử dụng ssh leys whrn you.need pwd để triển khai khóa pub?
—
lrkwz
Giống như @lrkwz, tôi cũng thiếu điểm gửi khóa mới trên mỗi bản dựng, khi nào bạn sẽ được yêu cầu nhập mật khẩu. Ngoài ra, tôi rất muốn xem tệp ủy quyền trên máy chủ từ xa ...
—
Fábio Duque Silva