簡體   English   中英

Dockerfile - 在 AWS 上安裝 jenkins

[英]Dockerfile - install jenkins on AWS

AWS 的新手,因此我們將不勝感激。

我正在嘗試通過 AWS 上的 Docker 運行 Jenkins。 我發現這篇文章https://docs.aws.amazon.com/aws-technical-content/latest/jenkins-on-aws/containerized-deployment.html

誰能分享一個更好的分步教程來實現這一目標? 上面的頁面似乎不完整。

它談到“Doc​​kerfile 還應該包含安裝 Jenkins Amazon ECS 插件的步驟”,但沒有展示如何使用 Dockerfile 安裝插件。

謝謝

請按照以下步驟操作:

  1. 根據您的需要啟動 EC2 集群。
  2. 在本地機器上安裝 docker。 例如,對於 ubuntu ( sudo apt-get isntall docker.io )
  3. systemctl start docker
  4. 為我們的 jenkins docker 創建新文件夾。 使用以下內容在其中創建新的 Dockerfile。 FROM Jenkins COPY plugins.txt /usr/share/jenkins/plugins.txt RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt
  5. 在同一文件夾中創建 plugins.txt 並添加以下行amazon-ecs:1.3
  6. 使用 aws cli 登錄 ECR。 首先使用您的憑據配置 aws。 aws ecr get-login --region <REGION>將上述命令返回的輸出運行到aws ecr get-login --region <REGION> login。
  7. sudo docker build -t jenkins_master .
  8. sudo docker tag jenkins_master:latest <AWS ACC ID>.dkr.ecr.<REGION>.amazonaws.com/jenkins_master:latest
  9. 在 ECR 中為此映像創建存儲庫aws ecr create-repository --repository-name jenkins_master
  10. 在 AWS ECR 中推送圖像。 sudo docker push <AWS ACC ID>.dkr.ecr.<REGION>+.amazonaws.com/jenkins_master:latest
  11. 我們的 Jenkins docker 鏡像已准備就緒。 但是這個 Jenkins 服務器存儲的數據不會持久化。 為了永久存儲數據,我們將創建另一個 docker 鏡像,它將創建一個帶有掛載點的卷。 為此,為這個新的 docker 鏡像創建新目錄,並在其中創建另一個包含以下內容的 Dockerfile。 FROM Jenkins VOLUME ["/var/jenkins_home"]
  12. 再次按照相同的命令將這個新存儲庫推送到 ECR。 sudo docker build -t jenkins_dv . sudo docker tag jenkins_dv:latest <AWS ACC ID>.dkr.ecr.<REGION>.amazonaws.com/jenkins_dv:latest aws ecr create-repository --repository-name jenkins_dv sudo docker push <AWS Account Number>.dkr.ecr.<REGION>.amazonaws.com/jenkins_dv:latest aws ecr create-repository --repository-name jenkins_dv sudo docker push <AWS Account Number>.dkr.ecr.<REGION>.amazonaws.com/jenkins_dv:latest
  13. 現在我們的圖像准備好了。 我們將使用這些鏡像在我們的 ECS 集群上將它們作為服務運行。 為此,我們需要使用以下 Linux 命令安裝 ecs-cli。 sudo curl -o /usr/local/bin/ecs-cli https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-linux-amd64-latest
  14. 使用以下內容創建一個新的 txt 文件,該文件將具有 jenkins 配置。
jenkins_master:
圖片:jenkins_master
cpu_shares: 100
內存限制:2000M
端口:
- “8080:8080”
- “50000:50000”
卷來自:
- jenkins_dv
jenkins_dv:
圖片:jenkins_dv
cpu_shares: 100
內存限制:500M


15. 最后使用上述文件將此服務推送到您新創建的集群。 ecs-cli compose --file docker_compose.txt service up --cluster <cluster_name>

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM