Tabla de contenido
0、CI/CD
CI, Integración Continua, integración continua. El código continuamente actualizado se integrará continuamente en la rama principal del proyecto después de ser construido y probado.
CD tiene dos significados: entrega continua e implementación continua.
- Entrega continua: es el paso de seguimiento de la integración continua, entrega continua y frecuentemente nuevas versiones del software a un entorno similar a producción para su prelanzamiento, es decir, se entrega a los departamentos de pruebas y de productos para las pruebas de aceptación. como pruebas de integración y pruebas de API para garantizar que los productos entregados se puedan implementar directamente.
- Despliegue continuo: es el paso posterior de la entrega continua, implementando los productos de entrega continua al entorno de producción.
Diagrama de arquitectura final del sistema.
Planificación de dirección IP
dirección IP | ilustrar | instalar software |
---|---|---|
192.168.40.171 | servidor gitlab | ventana acoplable, ventana acoplable componer |
192.164.40.172 | servidor sonarqube | ventana acoplable, ventana acoplable componer |
192.168.40.139 | servidor de destino | ventana acoplable, ventana acoplable componer |
192.168.40.138 | servidor de puerto | ventana acoplable, ventana acoplable componer, puerto |
192.168.40.137 | servidor jenkins | ventana acoplable, ventana acoplable componer, jdk |
1. configuración de git
descargar git
Git es un software de control de versiones distribuido de código abierto que se utiliza para manejar de manera efectiva y rápida la gestión de versiones de proyectos desde proyectos pequeños hasta proyectos muy grandes. Git fue diseñado y desarrollado originalmente por Linux Torvalds para gestionar el desarrollo del kernel de Linux.
URL de descarga: haga clic aquí para ingresar al sitio web oficial de Git
La descarga del sitio web oficial es demasiado lenta, podemos usar la descarga espejo de Taobao: Descarga espejo
Después de descargarlo, instálelo sin pensar. Después de que la instalación sea exitosa, haga clic derecho en cualquier lugar de la computadora y aparecerá el contenido que se muestra a continuación. La instalación fue exitosa.
pycharm configurar git
configuración de ideas git
2. Instalación y configuración de GitLab
GitLab
Es una herramienta de código abierto que aloja código fuente que utiliza Git como herramienta de administración de código y crea un servicio web basado en esto. GitLab se utiliza generalmente en producción para crear una plataforma de alojamiento de código fuente privada.
Requisitos de alojamiento
Aquí necesitamos usar Docker para instalar GitLab, por lo que necesitamos un host con e instalado docker
, docker-compose
y el host tiene al menos memoria 4G
.
Extraer imagen
Aquí se utiliza la imagen de la versión comunitaria publicada por el sitio web oficial de gitlab gitlab/gitlab-ce:latest
. Es mejor extraer esta imagen localmente antes de usarla porque la imagen es relativamente grande.
[root@gitlab ~]# docker pull gitlab/gitlab-ce
Como puede ver, la memoria ocupada sigue siendo relativamente grande.
definir componer.yml
mkdir un subdirectorio en cualquier directorio; por ejemplo, cree un nuevo directorio glab en /opt. Cree un nuevo archivo compose.yml en este directorio
[root@gitlab opt]# mkdir -p /opt/glab
El archivo compose.yml es el siguiente
services:
gitlab:
image: gitlab/gitlab-ce
container_name: gitlab
restart: always
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.40.171:9999' # 设置 GitLab 的配置,包括外部访问 URL 和 SSH 端口等
gitlab_rails['gitlab_shell_ssh_port']=2222
ports:
- 9999:9999
- 2222:2222
volumes:
- ./config:/etc/gitlab
- ./logs:/var/log/gitlab
- ./data:/var/opt/gitlab
Iniciar gitlab
Tomará algún tiempo comenzar, espere pacientemente un momento.
[root@gitlab glab]# docker compose up -d
[+] Running 2/2
✔ Network glab_default Created 0.1s
✔ Container gitlab Started 0.5s
Acceso al navegador y cambio de contraseña
Escriba http://192.168.192.171:9999 directamente en el navegador para abrir la página de inicio de sesión. Sin embargo, este proceso generalmente lleva mucho tiempo. Se requiere un nombre de usuario y contraseña para iniciar sesión aquí. El nombre de usuario predeterminado root
y la contraseña predeterminada deben verse en el contenedor.
Ver contraseña de inicio de sesión
La contraseña inicial está en el archivo /etc/gitlab/initial_root_password en el contenedor. Por lo tanto, primero debe ingresar al contenedor y luego ver el contenido del archivo. Luego complete el nombre de usuario raíz y copie la contraseña en las posiciones correspondientes en la página de inicio de sesión para iniciar sesión correctamente.
cambiar la contraseña
Nombre de usuario: root. Establezca la nueva contraseña como: contraseña modificada ( la complejidad de la contraseña debe ser mayor; de lo contrario, la modificación no se realizará correctamente ) y luego inicie sesión nuevamente.
3. Instalación y configuración de SonarQube
SonarQube es una plataforma de análisis y escaneo de código fuente abierta que se utiliza para escanear, analizar y evaluar continuamente la calidad y seguridad del código fuente del proyecto. A través de SonarQube, se pueden detectar y mostrar a través de la interfaz de usuario web de SonarQube múltiples dimensiones, como el volumen de código, los riesgos de seguridad, los riesgos de las especificaciones de escritura, la duplicación, la complejidad, el incremento del código y la cobertura de las pruebas.
Extraer imagen
Dado que SonarQube requiere Postgres
soporte de base de datos, debe instalar la base de datos Postgres antes de instalar SonarQube. Entonces necesitas descargar Postgres
y SonarQube
dos imágenes.
[root@sonarqube opt]# docker pull postgres
[root@sonarqube opt]# docker pull sonarqube:9.9-community
Cree un nuevo directorio sonarqube en /opt. Cree un nuevo archivo compose.yml en este directorio
componer.yml
services:
postgres:
images: postgres
container_name: pgdb
restart: always
ports:
- 5432:5432
environment:
POSTGRES_USER: sonar
POSTGRES_PASSWORD: sonar
sonarqube:
image: sonarqube:9.9-community
container_name: sonarqb
restart: always
depends_on:
- postgres
ports:
- 9000:9000
environment:
SONAR_JDBC_URL: jdbc:postgresql://pgdb:5432/sonar # 连接postgresql
SONAR_JDBC_USERNAME: sonar
SONAR_JDBC_PASSWORD: sonar
Modificar el tamaño de la memoria virtual
/etc/sysctl.conf
Especificar vm.max_map_count
el tamaño de la memoria virtual en el archivo
vm.max_map_count=262144
Después de modificar y guardar, ejecute sysctl –p
el comando para que el kernel de Linux cargue la configuración en el archivo.
sysctl –p
Iniciar SonarQube
[root@sonarqube sonarqube]# docker compose up -d
[+] Running 3/3
✔ Network sonarqube_default Created 0.1s
✔ Container pgdb Started 0.7s
✔ Container sonarqb Started
Iniciar sesión en SonarQube
Escriba la IP del servidor SonarQube y el número de puerto 9000 en el navegador para abrir la página de inicio de sesión. El nombre de usuario y la contraseña predeterminados son admin.
Nombre de usuario: admin Establecer nueva contraseña: 123456
Instalar el complemento chino
Una vez que la instalación sea exitosa, podrá ver el mensaje Reiniciar servidor en la parte superior de la página y reiniciar SonarQube.
4. Instalación y configuración del puerto.
Para la instalación de Harbour, puede leer mi artículo sobre la instalación y el uso de Docker Harbour, así como sobre la carga y extracción de imágenes.
Iniciar acceso
El nombre de usuario predeterminado admin
esHarbor12345
Crear un nuevo almacén espejo
5. Instalación y configuración del servidor de destino
El servidor de destino debe extraer la imagen de Docker del centro espejo Harbor y luego usar Docker Run para ejecutar el contenedor, por lo que Docker debe instalarse en el servidor de destino.