Debian上的Docker自動化部署可以通過結合Jenkins和GitLab CI/CD來實現。以下是一個基本的步驟指南:
首先,在Debian服務器上安裝Docker和Docker Compose??梢詤⒖家韵旅睿?/p>
# 更新包列表
sudo apt-get update
# 安裝必要的軟件包
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg software-properties-common
# 添加Docker官方GPG密鑰
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
# 添加Docker APT源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新包列表
sudo apt-get update
# 安裝Docker CE
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 驗證安裝
sudo docker run hello-world
安裝Jenkins并配置Docker插件??梢詤⒖家韵虏襟E:
# 安裝Jenkins
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins
# 啟動Jenkins
sudo systemctl start jenkins
sudo systemctl enable jenkins
# 配置Docker插件
sudo jenkins-cli safe-restart
在GitLab項目中創建.gitlab-ci.yml
文件,定義自動化部署流程。以下是一個簡單的示例:
stages:
- build
- test
- deploy
build_job:
stage: build
script:
- docker build -t my-debian-image:latest .
test_job:
stage: test
script:
- docker run my-debian-image:latest /bin/bash -c "npm test"
deploy_job:
stage: deploy
script:
- scp -r ./dist user@your-server:/path/to/deploy
only:
- main
配置GitLab CI/CD以在代碼提交時自動觸發構建和部署流程。這通常在項目設置中的CI/CD部分完成。
通過Jenkins和GitLab的界面監控構建和部署狀態,查看詳細的日志信息,以便于問題排查和調試。
以上步驟提供了一個基本的Debian Docker自動化部署流程。根據具體需求,可以進一步定制和擴展自動化腳本和流程。