Dockerfile - установить Дженкинс на AWS - PullRequest
0 голосов
/ 23 февраля 2019

Впервые в AWS, поэтому любая помощь будет принята.

Я пытаюсь запустить Дженкинса через Docker на AWS.Я нашел эту статью https://docs.aws.amazon.com/aws-technical-content/latest/jenkins-on-aws/containerized-deployment.html

Может кто-нибудь поделиться лучшим пошаговым руководством для достижения этой цели?приведенная выше страница выглядит неполной.

В ней говорится о том, что «Dockerfile должен также содержать шаги по установке плагина Jenkins Amazon ECS», но не показано, как выполнить установку плагина с помощью Dockerfile.

спасибо

1 Ответ

0 голосов
/ 23 февраля 2019

Пожалуйста, выполните следующие шаги:

  1. Запустите кластер EC2 в соответствии с вашими потребностями.
  2. Установите докер на свой локальный компьютер.Например, для Ubuntu (sudo apt-get isntall docker.io)
  3. systemctl start docker
  4. Создайте новую папку для нашего докера jenkins.Создайте в нем новый 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. Войдите в ECR, используя aws cli.Сначала настройте aws с вашими учетными данными. aws ecr get-login --region <REGION> Запустите вывод, полученный из вышеуказанной команды, для входа в Docker.
  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 готов.Но данные, хранящиеся на этом сервере Jenkins, не будут постоянными.Для постоянного хранения данных мы создадим другой образ докера, который создаст том с точкой монтирования.Для этого создайте новый каталог для этого нового образа 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
  13. Теперь наши изображения готовы.Мы будем использовать эти образы для запуска их в качестве службы в нашем кластере ECS.Для этого нам нужно установить ecs-cli с помощью команды ниже для linux. sudo curl -o /usr/local/bin/ecs-cli https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-linux-amd64-latest
  14. Создайте новый текстовый файл с содержимым ниже, который будет иметь конфигурацию jenkins.
jenkins_master:
image: jenkins_master
cpu_shares: 100
mem_limit: 2000M
порты:
- «8080: 8080»
- «50000: 50000»
volume_from:
- jenkins_dv
jenkins_dv:
изображение: jenkins_dv
cpu_shares: 100
mem_limit: 500M


15. Наконец, отправьте этот сервис, используя указанный выше файл, во вновь созданный кластер. ecs-cli compose --file docker_compose.txt service up --cluster <cluster_name>

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...