เดเดจเตเดฑเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเดจเตเดฑเต เดตเดฟเดจเตเดฏเดพเดธเด เดเดเตเดเตเดฎเตเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเต เดเดพเตป เดเดฐเดฟเดเตเดเตฝ เดเดฟเดจเตเดคเดฟเดเตเดเต. gitlab.com เดเดคเดฟเดจเตเดณเตเดณ เดเดฒเตเดฒเดพ เดเดชเดเดฐเดฃเดเตเดเดณเตเด เดฆเดฏเดฏเตเดเต เดจเตฝเดเตเดจเตเดจเต, เดคเตเตผเดเตเดเดฏเดพเดฏเตเด เดเดพเตป เด
เดคเต เดชเตเดฐเดฏเตเดเดจเดชเตเดชเตเดเตเดคเตเดคเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต, เด
เดคเต เดเดฃเตเดเตเดคเตเดคเดฟ เดเดฐเต เดเตเดฑเดฟเดฏ เดตเดฟเดจเตเดฏเดพเดธ เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดดเตเดคเตเด. เด เดฒเตเดเดจเดคเตเดคเดฟเตฝ เดเดพเตป เดธเดฎเตเดนเดตเตเดฎเดพเดฏเดฟ เดเดจเตเดฑเต เด
เดจเตเดญเดตเด เดชเดเตเดเดฟเดเตเดจเตเดจเต.
เด เดเตเดเต เดกเดฟ.เดเตผ.
- VPS เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเด: เดฑเตเดเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเดเตเดเตเด, เดชเดพเดธเตโเดตเตเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเตเด, เดกเตเดเตเดเตผเดกเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด, ufw เดเตเตบเดซเดฟเดเตผ เดเตเดฏเตเดฏเตเด
- เดธเตเตผเดตเดฑเดฟเดจเตเด เดเตเดฒเดฏเดจเตเดฑเดฟเดจเตเดฎเดพเดฏเดฟ เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเด
docs.docker.com/engine/security/https/#create-a-ca-server-and-client-keys-with-openssl tcp เดธเตเดเตเดเดฑเตเดฑเต เดตเดดเดฟ เดกเตเดเตเดเตผเดกเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเด เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดทเดฎเดฎเดพเดเตเดเตเด: เดกเตเดเตเดเตผ เดเตเตบเดซเดฟเดเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต -H fd:// เดเดชเตเดทเตป เดจเตเดเตเดเด เดเตเดฏเตเดฏเตเด. - docker.json-เตฝ เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเดณเดฟเดฒเตเดเตเดเตเดณเตเดณ เดชเดพเดคเดเตพ เดฐเดเดฟเดธเตเดฑเตเดฑเตผ เดเตเดฏเตเดฏเตเด
- เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเดณเตเดเต เดเดณเตเดณเดเดเตเดเดเตเดเตพเดเตเดเตเดชเตเดชเด CI/CD เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเดณเดฟเตฝ gitlab เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเดณเดฟเตฝ เดฐเดเดฟเดธเตเดฑเตเดฑเตผ เดเตเดฏเตเดฏเตเด. เดตเดฟเดจเตเดฏเดพเดธเดคเตเดคเดฟเดจเดพเดฏเดฟ เดเดฐเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต .gitlab-ci.yml เดเดดเตเดคเตเด.
เดกเตเดฌเดฟเดฏเตป เดตเดฟเดคเดฐเดฃเดคเตเดคเดฟเดฒเต เดเดฒเตเดฒเดพ เดเดฆเดพเดนเดฐเดฃเดเตเดเดณเตเด เดเดพเตป เดเดพเดฃเดฟเดเตเดเตเด.
เดชเตเดฐเดพเดฐเดเดญ VPS เดธเดเตเดเตเดเดฐเดฃเด
เด
เดคเดฟเดจเดพเตฝ เดจเดฟเดเตเดเตพ เดเดฐเต เดเดฆเดพเดนเดฐเดฃเด เดตเดพเดเตเดเดฟ
เดธเตเดเตเดฐเตเตปเดทเตเดเตเดเต
เดเดฆเตเดฏเด, ufw เดซเดฏเตผเดตเดพเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด:
apt-get update && apt-get install ufw
เดจเดฎเตเดเตเดเต เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดจเดฏเด เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดทเดฎเดฎเดพเดเตเดเดพเด: เดเดฒเตเดฒเดพ เดเตปเดเดฎเดฟเดเดเต เดเดฃเดเตเดทเดจเตเดเดณเตเด เดคเดเดฏเตเด, เดเดฒเตเดฒเดพ เดเดเตเดเตโเดเตเดฏเดฟเดเดเต เดเดฃเดเตเดทเดจเตเดเดณเตเด เด เดจเตเดตเดฆเดฟเดเตเดเตเด:
ufw default deny incoming
ufw default allow outgoing
เดชเตเดฐเดงเดพเดจเด: ssh เดตเดดเดฟเดฏเตเดณเตเดณ เดเดฃเดเตเดทเตป เด เดจเตเดตเดฆเดฟเดเตเดเดพเตป เดฎเดฑเดเตเดเดฐเตเดคเต:
ufw allow OpenSSH
เดชเตเดคเตเดตเดพเดฏ เดตเดพเดเตเดฏเดเดเดจ เดเดชเตเดฐเดเดพเดฐเดฎเดพเดฃเต: เดชเตเตผเดเตเดเต เดตเดดเดฟ เดเดฐเต เดเดฃเดเตเดทเตป เด เดจเตเดตเดฆเดฟเดเตเดเตเด: ufw 12345 เด เดจเตเดตเดฆเดฟเดเตเดเตเด, เดเดตเดฟเดเต 12345 เดเดจเตเดจเดคเต เดชเตเตผเดเตเดเต เดจเดฎเตเดชเดฑเต เดธเตเดตเดจเดคเตเดคเดฟเดจเตเดฑเต เดชเตเดฐเต เดเดฃเต. เดจเดฟเดฐเดธเดฟเดเตเดเตเด: ufw เดจเดฟเดทเตเดงเดฟเดเตเดเตเด 12345
เดซเดฏเตผเดตเดพเตพ เดเดฃเดพเดเตเดเตเด:
ufw enable
เดเดเตเดเตพ เดธเตเดทเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฑเดคเตเดคเตเดเดเดจเตเดจเต ssh เดตเดดเดฟ เดตเตเดฃเตเดเตเด เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเตเดจเตเดจเต.
เดเดฐเต เดเดชเดฏเตเดเตเดคเดพเดตเดฟเดจเต เดเตเตผเดเตเดเตเด, เด เดฏเดพเตพเดเตเดเต เดเดฐเต เดชเดพเดธเตโเดตเตเดกเต เดจเตฝเดเตเด, เด เดตเดจเต เดธเตเดกเต เดเตเดฐเตเดชเตเดชเดฟเดฒเตเดเตเดเต เดเตเตผเดเตเดเตเด.
apt-get install sudo
adduser scoty
usermod -aG sudo scoty
เด เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดชเตเดฒเดพเตป เด เดจเตเดธเดฐเดฟเดเตเดเต, เดจเดฟเดเตเดเตพ เดชเดพเดธเตเดตเตเดกเต เดฒเตเดเดฟเตป เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเดเตเดเดฃเด. เดเดคเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดเตเดเดณเตเดเต ssh เดเต เดธเตเตผเดตเดฑเดฟเดฒเตเดเตเดเต เดชเดเตผเดคเตเดคเตเด:
ssh-copy-id [email protected]
เดธเตเตผเดตเตผ เดเดชเดฟ เดจเดฟเดเตเดเดณเตเดเตเดคเดพเดฏเดฟเดฐเดฟเดเตเดเดฃเด. เดเดชเตเดชเตเตพ เดจเดฟเดเตเดเตพ เดจเตเดฐเดคเตเดคเต เดธเตเดทเตเดเดฟเดเตเด เดเดชเดฏเตเดเตเดคเดพเดตเดฟเดจเต เดเดชเดฏเตเดเดฟเดเตเดเต เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเตเด; เดจเดฟเดเตเดเตพ เดเดจเดฟ เดเดฐเต เดชเดพเดธเตโเดตเตเดกเต เดจเตฝเดเตเดฃเตเดเดคเดฟเดฒเตเดฒ. เด เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเดณเดฟเตฝ, เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดฎเดพเดฑเตเดฑเตเด:
sudo nano /etc/ssh/sshd_config
เดชเดพเดธเตโเดตเตเดกเต เดฒเตเดเดฟเตป เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเดเตเดเตเด:
PasswordAuthentication no
sshd เดกเตเดฎเตบ เดชเตเดจเดฐเดพเดฐเดเดญเดฟเดเตเดเตเด:
sudo systemctl reload sshd
เดเดชเตเดชเตเตพ เดจเดฟเดเตเดเดณเต เดฎเดฑเตเดฑเดพเดฐเตเดเตเดเดฟเดฒเตเดฎเต เดฑเตเดเตเดเต เดเดชเดฏเตเดเตเดคเดพเดตเดพเดฏเดฟ เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเดพเตฝ, เด เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดฟเดฒเตเดฒ.
เด
เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดกเตเดเตเดเตผเดกเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด, เดเดพเตป เดเดตเดฟเดเต เดชเตเดฐเดเตเดฐเดฟเดฏ เดตเดฟเดตเดฐเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ, เดเดพเดฐเดฃเด เดเดฒเตเดฒเดพเด เดเดคเดฟเดจเดเด เดฎเดพเดฑเตเดฑเดพเตป เดเดดเดฟเดฏเตเด, เดเดฆเตเดฏเตเดเดฟเด เดตเตเดฌเตเดธเตเดฑเตเดฑเดฟเดฒเตเดเตเดเตเดณเตเดณ เดฒเดฟเดเตเดเต เดชเดฟเดจเตเดคเตเดเดฐเตเด, เดจเดฟเดเตเดเดณเตเดเต เดตเตเตผเดเตเดตเตฝ เดฎเตเดทเตเดจเดฟเตฝ เดกเตเดเตเดเตผ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจ เดเดเตเดเดเตเดเดณเดฟเดฒเตเดเต เดชเตเดเตเด:
เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต
เดกเตเดเตเดเตผ เดกเตเดฎเตบ เดตเดฟเดฆเตเดฐเดฎเดพเดฏเดฟ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, เดเดฐเต เดเตปเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเตเดฏเตเดค TLS เดเดฃเดเตเดทเตป เดเดตเดถเตเดฏเดฎเดพเดฃเต. เดเดคเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดเตเดเตพเดเตเดเต เดเดฐเต เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเด เดเดฐเต เดเตเดฏเตเด เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเดฃเด, เด
เดคเต เดเดจเดฑเตเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดเดฏเตเด เดจเดฟเดเตเดเดณเตเดเต เดฑเดฟเดฎเตเดเตเดเต เดฎเตเดทเตเดจเดฟเดฒเตเดเตเดเต เดฎเดพเดฑเตเดฑเตเดเดฏเตเด เดตเตเดฃเด. เดเดฆเตเดฏเตเดเดฟเด เดกเตเดเตเดเตผ เดตเตเดฌเตเดธเตเดฑเตเดฑเดฟเดฒเต เดจเดฟเตผเดฆเตเดฆเตเดถเดเตเดเดณเดฟเตฝ เดจเตฝเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจ เดเดเตเดเดเตเดเตพ เดชเดพเดฒเดฟเดเตเดเตเด:
เดกเตเดเตเดเตผเดกเต เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต
เดกเตเดเตเดเตผ เดกเตเดฎเตบ เดฒเตเดเตเดเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเดฟเตฝ, เดเดเตเดเตพ -H df:// เดเดชเตโเดทเตป เดจเตเดเตเดเด เดเตเดฏเตเดฏเตเดจเตเดจเต, เดเดคเต เดนเตเดธเตเดฑเตเดฑเดฟเดฒเดพเดฃเต เดกเตเดเตเดเตผ เดกเตเดฎเตบ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเดเดฏเตเดจเตเดจเต เด เดเดชเตเดทเตป เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเตเดจเตเดจเต.
# At /lib/systemd/system/docker.service
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
เด เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดจเดฟเดเตเดเตพ เดเดฐเต เดเตเดฐเดฎเตเดเดฐเดฃ เดซเดฏเตฝ เดธเตเดทเตเดเดฟเดเตเดเดฃเด, เด เดคเต เดจเดฟเดฒเดตเดฟเดฒเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดเดชเตเดทเดจเตเดเตพ เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเตเด:
/etc/docker/docker.json
{
"hosts": [
"unix:///var/run/docker.sock",
"tcp://0.0.0.0:2376"
],
"labels": [
"is-our-remote-engine=true"
],
"tls": true,
"tlscacert": "/etc/docker/ca.pem",
"tlscert": "/etc/docker/server.pem",
"tlskey": "/etc/docker/key.pem",
"tlsverify": true
}
เดชเตเตผเดเตเดเต 2376-เตฝ เดเดฃเดเตเดทเดจเตเดเตพ เด เดจเตเดตเดฆเดฟเดเตเดเดพเด:
sudo ufw allow 2376
เดชเตเดคเดฟเดฏ เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดกเตเดเตเดเตผเดกเต เดชเตเดจเดฐเดพเดฐเดเดญเดฟเดเตเดเดพเด:
sudo systemctl daemon-reload && sudo systemctl restart docker
เดจเดฎเตเดเตเดเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเดพเด:
sudo systemctl status docker
เดเดฒเตเดฒเดพเด "เดชเดเตเด" เดเดฃเตเดเตเดเดฟเตฝ, เดเดเตเดเตพ เดธเตเตผเดตเดฑเดฟเตฝ เดกเตเดเตเดเตผ เดตเดฟเดเดฏเดเดฐเดฎเดพเดฏเดฟ เดเตเดฐเดฎเตเดเดฐเดฟเดเตเดเดคเดพเดฏเดฟ เดเดเตเดเตพ เดเดฐเตเดคเตเดจเตเดจเต.
เดเดฟเดฑเตเดฑเตโเดฒเดพเดฌเดฟเตฝ เดคเตเดเตผเดเตเดเดฏเดพเดฏ เดกเตเดฒเดฟเดตเดฑเดฟ เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต
เดเดฐเต เดฑเดฟเดฎเตเดเตเดเต เดกเตเดเตเดเตผ เดนเตเดธเตเดฑเตเดฑเดฟเตฝ เดเดฎเดพเตปเดกเตเดเตพ เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเดพเตป Gitalaba เดคเตเดดเดฟเดฒเดพเดณเดฟเดเตเดเต เดเดดเดฟเดฏเดฃเดฎเตเดเตเดเดฟเตฝ, เดกเตเดเตเดเตผเดกเตเดฎเดพเดฏเตเดณเตเดณ เดเตปเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเตเดฏเตเดค เดเดฃเดเตเดทเดจเตเดณเตเดณ เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเดณเตเด เดเตเดฏเตเด เดเดเตเดเดจเต, เดเดตเดฟเดเต เดธเตเดเตเดทเดฟเดเตเดเดฃเดฎเตเดจเตเดจเต เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเตเดฃเตเดเดคเต เดเดตเดถเตเดฏเดฎเดพเดฃเต. gitlbab เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเดณเดฟเดฒเต เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเดณเดฟเดฒเตเดเตเดเต เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดเตเตผเดคเตเดคเตเดเตเดฃเตเดเต เดเดพเตป เด เดชเตเดฐเดถเตเดจเด เดชเดฐเดฟเดนเดฐเดฟเดเตเดเต:
เดธเตโเดชเตเดฏเดฟเดฒเตผ เดถเตเตผเดทเดเด
เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเดณเตเดเตเดฏเตเด เดเตเดฏเตเดเตเดฏเตเด เดเดณเตเดณเดเดเตเดเด เดชเตเดเตเด เดตเดดเดฟ เดเดเตเดเตเดชเตเดเตเดเต เดเตเดฏเตเดฏเตเด: cat ca.pem
. เดตเตเดฐเดฟเดฏเดฌเดฟเตพ เดฎเตเดฒเตเดฏเดเตเดเดณเดฟเดฒเตเดเตเดเต เดชเดเตผเดคเตเดคเดฟ เดเดเตเดเดฟเดเตเดเตเด.
GitLab เดตเดดเดฟ เดตเดฟเดจเตเดฏเดพเดธเดคเตเดคเดฟเดจเดพเดฏเดฟ เดเดฐเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดดเตเดคเดพเด. เดกเตเดเตเดเตผ-เดเตป-เดกเตเดเตเดเตผ (เดกเดฟเตปเดกเต) เดเดฟเดคเตเดฐเด เดเดชเดฏเตเดเดฟเดเตเดเตเด.
.gitlab-ci.yml
image:
name: docker/compose:1.23.2
# ะฟะตัะตะฟะธัะตะผ entrypoint , ััะพะฑั ัะฐะฑะพัะฐะปะพ ะฒ dind
entrypoint: ["/bin/sh", "-c"]
variables:
DOCKER_HOST: tcp://docker:2375/
DOCKER_DRIVER: overlay2
services:
- docker:dind
stages:
- deploy
deploy:
stage: deploy
script:
- bin/deploy.sh # ัะบัะธะฟั ะดะตะฟะปะพั ััั
เด เดญเดฟเดชเตเดฐเดพเดฏเดเตเดเดณเตเดณเตเดณ เดตเดฟเดจเตเดฏเดพเดธ เดธเตโเดเตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดจเตเดฑเต เดเดณเตเดณเดเดเตเดเด:
bin/deploy.sh
#!/usr/bin/env sh
# ะะฐะดะฐะตะผ ััะฐะทั, ะตัะปะธ ะฒะพะทะฝะธะบะปะธ ะบะฐะบะธะต-ัะพ ะพัะธะฑะบะธ
set -e
# ะัะฒะพะดะธะผ, ัะพ , ััะพ ะดะตะปะฐะตะผ
set -v
#
DOCKER_COMPOSE_FILE=docker-compose.yml
# ะัะดะฐ ะดะตะฟะปะพะธะผ
DEPLOY_HOST=185.241.52.28
# ะััั ะดะปั ัะตััะธัะธะบะฐัะพะฒ ะบะปะธะตะฝัะฐ, ัะพ ะตััั ะฒ ะฝะฐัะตะผ ัะปััะฐะต - gitlab-ะฒะพัะบะตัะฐ
DOCKER_CERT_PATH=/root/.docker
# ะฟัะพะฒะตัะธะผ, ััะพ ะฒ ะบะพะฝัะตะนะฝะตัะต ะฒัะต ะธะผะตะตััั
docker info
docker-compose version
# ัะพะทะดะฐะตะผ ะฟััั (ัะตะนัะฐั ัะฐะฑะพัะฐะตะผ ะฒ ะบะปะธะตะฝัะต - ะฒะพัะบะตัะต gitlab'ะฐ)
mkdir $DOCKER_CERT_PATH
# ะธะทัะผะฐะตะผ ัะพะดะตัะถะธะผะพะต ะฟะตัะตะผะตะฝะฝัั
, ะฟัะธ ััะพะผ ัะดะฐะปัะตะผ ะปะธัะฝะธะต ัะธะผะฒะพะปั ะดะพะฑะฐะฒะปะตะฝะฝัะต ะฟัะธ ัะพั
ัะฐะฝะตะฝะธะธ ะฟะตัะตะผะตะฝะฝัั
.
echo "$CA_PEM" | tr -d 'r' > $DOCKER_CERT_PATH/ca.pem
echo "$CERT_PEM" | tr -d 'r' > $DOCKER_CERT_PATH/cert.pem
echo "$KEY_PEM" | tr -d 'r' > $DOCKER_CERT_PATH/key.pem
# ะฝะฐ ะฒััะบะธะน ัะปััะฐะน ะดะฐะตะผ ัะพะปัะบะพ ัะธัะฐัั
chmod 400 $DOCKER_CERT_PATH/ca.pem
chmod 400 $DOCKER_CERT_PATH/cert.pem
chmod 400 $DOCKER_CERT_PATH/key.pem
# ะดะฐะปะตะต ะฝะฐัะธะฝะฐะตะผ ัะถะต ัะฐะฑะพัะฐัั ั ัะดะฐะปะตะฝะฝัะผ docker-ะดะตะผะพะฝะพะผ. ะกะพะฑััะฒะตะฝะฝะพ, ัะฐะผ ะดะตะฟะปะพะน
export DOCKER_TLS_VERIFY=1
export DOCKER_HOST=tcp://$DEPLOY_HOST:2376
# ะฟัะพะฒะตัะธะผ, ััะพ ะบะพะฝะฝะตะบัะธััั ะฒัะต ััะฟะตัะฝะพ
docker-compose
-f $DOCKER_COMPOSE_FILE
ps
# ะปะพะณะธะฝะธะผัั ะฒ docker-ัะตะณะธัััะธ, ััั ะผะพะถะตัะต ัะบะฐะทะฐัั ัะฒะพะน "ะผะตััะฝัะน" ัะตะณะธัััะธ
docker login -u $DOCKER_USER -p $DOCKER_PASSWORD
docker-compose
-f $DOCKER_COMPOSE_FILE
pull app
# ะฟะพะดะฝะธะผะฐะตะผ ะฟัะธะปะพะถะตะฝะธะต
docker-compose
-f $DOCKER_COMPOSE_FILE
up -d app
เดเดฟเดฑเตเดฑเตโเดฒเดพเดฌเต CI/CD เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเดณเตเดเต เดเดณเตเดณเดเดเตเดเดเตเดเตพ เดธเดพเดงเดพเดฐเดฃ เดฐเตเดชเดคเตเดคเดฟเตฝ "เดตเดฒเดฟเดเตเดเตเด" เดเดจเตเดจเดคเดพเดฏเดฟเดฐเตเดจเตเดจเต เดชเตเดฐเดงเดพเดจ เดชเตเดฐเดถเตเดจเด. เดฑเดฟเดฎเตเดเตเดเต เดนเตเดธเตเดฑเตเดฑเดฟเดฒเตเดเตเดเตเดณเตเดณ เดเดฃเดเตเดทเตป เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเดคเตเดคเดคเต เดเดจเตเดคเตเดเตเดฃเตเดเดพเดฃเตเดจเตเดจเต เดเดจเดฟเดเตเดเต เดเดฃเตเดเตเดคเตเดคเดพเดจเดพเดฏเดฟเดฒเตเดฒ. เดนเตเดธเตเดฑเตเดฑเดฟเตฝ เดเดพเตป log sudo journalctl -u docker เดจเตเดเตเดเดฟ, เดนเดพเตปโเดกเตโเดทเตเดเตเดเดฟเตฝ เดเดฐเต เดชเดฟเดถเดเต เดธเดเดญเดตเดฟเดเตเดเต. เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเดณเดฟเตฝ เดชเตเดคเตเดตเต เดเดจเตเดคเดพเดฃเต เดธเดเดญเดฐเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเตเดจเตเดจเต เดจเตเดเตเดเดพเตป เดเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต; เดเดคเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดเตเดเตพเดเตเดเต เดเดคเตเดชเตเดฒเต เดเดพเดฃเดพเดตเตเดจเตเดจเดคเดพเดฃเต: cat -A $DOCKER_CERT_PATH/key.pem. เดตเดฃเตเดเดฟเดฏเตเดเต เดชเตเดฐเดคเตเดเดฎเดพเดฏ tr -d 'r' เดจเตเดเตเดเด เดเตเดฏเตโเดคเต เดเดพเตป เดชเดฟเดถเดเต เดฎเดฑเดฟเดเดเดจเตเดจเต.
เด
เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดจเดฟเดเตเดเดณเตเดเต เดตเดฟเดตเตเดเดจเดพเดงเดฟเดเดพเดฐเดคเตเดคเดฟเตฝ เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดฒเตเดเตเดเต เดชเตเดธเตเดฑเตเดฑเต-เดฑเดฟเดฒเตเดธเต เดเดพเดธเตเดเตเดเตเดเตพ เดเตเตผเดเตเดเดพเดตเตเดจเตเดจเดคเดพเดฃเต. เดจเดฟเดเตเดเตพเดเตเดเต เดเดจเตเดฑเต เดถเตเดเดฐเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดชเดคเดฟเดชเตเดชเต เดเดพเดฃเดพเตป เดเดดเดฟเดฏเตเด
เด
เดตเดฒเดเดฌเด: www.habr.com