[Linux] Erstellen einer Jenkins-Umgebung mit Docker

Einführung

Beachten Sie, wie Sie mit Docker eine Jenkins-Umgebung erstellen

Umweltinformationen

Aufbau der Docker-Umgebung

Siehe Artikel unten [Linux] Docker-Umgebungskonstruktion auf Redhat

docker-compose.yml Einstellungen

version: '3'

services:
  apache:
    build: apache
    container_name: apache
    ports:
      - 80:80
    volumes:
      - ./apache/conf/httpd.conf:/usr/local/apache2/conf/httpd.conf
      - ./apache/conf/modules.conf:/usr/local/apache2/conf/modules.conf
      - ./apache/conf/proxy.conf:/usr/local/apache2/conf/proxy.conf
  jenkins:
    build: jenkins
    container_name: jenkins
    volumes:
      - ./jenkins/jenkins_home:/var/jenkins_home
    environment:
      - JENKINS_OPTS=--prefix=/Jenkins/ --sessionTimeout=1440
      - TZ=Asia/Tokyo
    privileged: true

Dockerfile-Einstellungen

apache

FROM httpd:latest

RUN apt update \
    && apt install -y \
    git \
    gcc \
    make \
    build-essential \
    wget \
    curl \
    llvm \
    xz-utils \
    tk-dev \
    zlib1g-dev \
    libncurses5-dev \
    libbz2-dev \
    libreadline-dev \
    libsqlite3-dev \
    libssl-dev \
    libxml2-dev \
    libxmlsec1-dev \
    liblzma-dev \
    libpq-dev \
    libffi-dev

WORKDIR /usr/local/apache2

jenkins

FROM jenkins/jenkins:lts

WORKDIR /

USER root

RUN apt-get update \
    && apt-get install -y \
    gcc \
    g++ \
    expect \
    make \
    file \
    chromium \
    chromium-driver \
    libpq-dev \
    libssl-dev \
    libbz2-dev \
    libffi-dev \
    zlib1g-dev \
    liblzma-dev

WORKDIR /var/jenkins_home

EXPOSE 8080

Einstellungen für verschiedene Dateien

./apache/conf/httpd.conf

・ ・ ・
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so

Include conf/modules.conf <== hinzugefügt

・ ・ ・

IncludeOptional conf/proxy.conf <== hinzugefügt

./apache/conf/modules.conf

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

./apache/conf/proxy.conf

# jenkins
<Location "/Jenkins">
   <IfModule proxy_module>
      ProxyPass http://jenkins:8080/Jenkins
      ProxyPassReverse http://jenkins:8080/Jenkins
   </IfModule>
</Location>

Jenkins Startbestätigung

OK, wenn Sie unter der folgenden URL auf Jenkins zugreifen können

http://localhost/Jenkins

Recommended Posts

[Linux] Erstellen einer Jenkins-Umgebung mit Docker
[Linux] Aufbau einer Docker-Umgebung mit Amazon Linux 2
[Python] Erstellen Sie mit Docker eine Django-Entwicklungsumgebung
Erstellen Sie mit Docker eine CentOS Linux 8-Umgebung und starten Sie Apache HTTP Server
Erstellen Sie eine Entwicklungsumgebung mit Poetry Django Docker Pycharm
Erstellen Sie eine Deb-Datei mit Docker
Erstellen Sie eine MySQL + Python-Umgebung mit Docker
Erstellen Sie mit Docker eine Django-Entwicklungsumgebung! (Docker-compose / Django / postgreSQL / nginx)
[Memo] Erstellen Sie mit Docker eine Entwicklungsumgebung für Django + Nuxt.js
[Django] Erstellen Sie mit PyCharm schnell eine Entwicklungsumgebung für Django-Container (Docker)
Erstellen einer Todo-App mit Django ① Erstellen Sie eine Umgebung mit Docker
Erstellen Sie eine LAMP-Umgebung mit Vagrant (Linux + Apache + MySQL + PHP)
Erstellen Sie mit Laragon ganz einfach eine Entwicklungsumgebung
Erstellen Sie mit Docker eine Jupyter Lab (Python) -Umgebung
Erstellen Sie eine Tensorflow-Umgebung mit Raspberry Pi [2020]
Erstellen Sie mit Docker-Compose eine schnelle API-Umgebung
Holen Sie sich mit Docker eine lokale Umgebung für DynamoDB
Erstellen Sie mit pyenv eine virtuelle Umgebung für Python
Erstellen Sie mit Neovim eine moderne Python-Umgebung
Erstellen Sie mit Docker eine Umgebung aus NGINX + NGINX Unit + MySQL
[DynamoDB] [Docker] Erstellen Sie mit Docker-Compose eine Entwicklungsumgebung für DynamoDB und Django
Erstellen Sie eine LAMP-Umgebung auf Ihrem lokalen Docker
Erstellen Sie eine Entwicklungsumgebung für die C-Sprache mit einem Container
Erstellen Sie eine Python-Umgebung mit ansible auf centos6
Erstellen Sie mit Vagrant in 5 Minuten eine Django-Umgebung
[Memo] Erstellen Sie eine virtuelle Umgebung mit Pyenv + anaconda
Erstellen Sie mit der Doker Toolbox eine Django-Entwicklungsumgebung
Erstellen einer Python-Umgebung mit OSX Elcapitan
Erstellen Sie mit IntelliJ schnell eine Python Django-Umgebung
Erstellen Sie eine mruby-Entwicklungsumgebung für ESP32 (Linux Edition)
Erstellen Sie eine Python-Umgebung für maschinelles Lernen mit Containern
Erstellen Sie eine Python-Ausführungsumgebung mit VS-Code
Erstellen Sie mit Docker auf RaspberryPi3 eine Python + Flasche + MySQL-Umgebung! [Einfache Konstruktion]
Einfache toxische Umgebung mit Jenkins
Erstellen Sie eine virtuelle Python-Umgebung mit virtualenv und virtualenvwrapper
Erstellen Sie mit Docker auf RaspberryPi3 eine Python + Flasche + MySQL-Umgebung! [Versuch und Irrtum]
[Linux] WSL2 Erstellen Sie mit Ubuntu 20.04 eine Umgebung für laravel7
Erstellen Sie eine LAMP-Umgebung [CentOS 7]
Erstellen Sie eine Python3-Umgebung mit Ubuntu 16.04
So erstellen Sie eine Django (Python) -Umgebung auf Docker
Bereiten Sie die Python3-Umgebung mit Docker vor
Erstellen Sie mit direnv eine Python-Umgebung
[Go + Gin] Ich habe versucht, eine Docker-Umgebung zu erstellen
Erstellen Sie mit Python eine Entwicklungsumgebung für maschinelles Lernen
Erstellen Sie eine maschinelle Lernumgebung
Erstellen Sie die Python-Umgebung offline
So erstellen Sie eine Python-Umgebung unter Amazon Linux 2
Erstellen Sie eine lokale Entwicklungsumgebung mit WSL + Docker Desktop für Windows + Docker-Lambda + Python
Erstellen einer Django-Umgebung für Win10 (mit virtuellem Speicherplatz)
Erstellen Sie mit Docker eine einfache Fast API-Entwicklungsumgebung
[Linux] Erstellen Sie ein Selbstzertifikat mit Docker und Apache
Erstellen einer numerischen Berechnungsumgebung mit pyenv und miniconda3
Erstellen Sie mit Docker eine grundlegende Data Science-Umgebung (Jupyter, Python, R, Julia, Standardbibliothek).
Erstellen Sie eine Docker-Umgebung, die PyTorch und JupyterLab verwenden kann
Erstellen Sie mit VirtualBox und Ubuntu eine Scikit-Lernumgebung für maschinelles Lernen