|
| 1 | +# GitLab BOOTCAMP |
| 2 | + |
| 3 | + |
| 4 | +> El entorno está preparado para funcionar tanto en docker(Recomendado) en local o con una maquina virtual vagrant |
| 5 | +## Versiones de software |
| 6 | +- Vagrant: >= 2.2.x |
| 7 | +- Docker Engine: >= 19 |
| 8 | +- [Docker Compose >= 1.27.4](https://docs.docker.com/compose/install/) |
| 9 | +- VirtualBox >= 6.x |
| 10 | + |
| 11 | +## Creación del entorno |
| 12 | +1. Permitimos registry inseguro a docker |
| 13 | +* En Linux En el fichero /etc/docker/dameon.json |
| 14 | +``` |
| 15 | +{ |
| 16 | +insecure-registries : [gitlab.local:5001] |
| 17 | +} |
| 18 | +``` |
| 19 | +* En windows lo hacemos via Docker Desktop |
| 20 | + |
| 21 | +2a. Preparando el entorno con docker(Linux y windows). |
| 22 | +>> Es necesario permisos sudo (Linux) o Administrador(Windows) |
| 23 | +```bash |
| 24 | +user@localhost:~$ cd bootcamp_vagrant/gitlab/docker/ |
| 25 | +user@localhost:~bootcamp_vagrant/gitlab/docker$ docker-compose up -d |
| 26 | +``` |
| 27 | +2b. Preparando el entorno con Vagrant y Virtualbox |
| 28 | +```bash |
| 29 | +user@localhost:~$ cd bootcamp_vagrant/ |
| 30 | +user@localhost:~bootcamp_vagrant$ vagrant up |
| 31 | +``` |
| 32 | +3. Añadimos entrada al fichero hosts la entrada -> <Direccion_ip_local> gitlab.local" |
| 33 | +* Linux en el fichero /etc/hosts |
| 34 | +* Windows en el fichero c:\windows\system32\drivers\etc\hosts |
| 35 | + |
| 36 | + |
| 37 | +## Enlaces de docuemntación necesaria |
| 38 | +- [¿Què es gitlab?](https://about.gitlab.com/) |
| 39 | +- [Un poco de arquitectura](https://docs.gitlab.com/ee/development/img/architecture_simplified.png) |
| 40 | + |
| 41 | +## ¿Qué vamos a aprender? |
| 42 | +- Gestion de Usuarios |
| 43 | +- Gestión de proyectos(repositorios) |
| 44 | +- Entiendo los pipelines |
| 45 | +- Creacion de pipelines de build,test y deploy |
| 46 | +- Variables predefinidas de gitlab y custom |
| 47 | +- Uso de container registry |
| 48 | +- Pipelines de creación de imagenes Base |
| 49 | +- Usar nuestras Imágenes |
| 50 | + |
| 51 | +## Cheatsheet |
| 52 | +### [Variables Predefinidas](https://docs.gitlab.com/ee/ci/variables/predefined_variables.html) |
| 53 | +### [Referencia configuración de pipeline](https://docs.gitlab.com/ce/ci/yaml/) |
| 54 | + |
| 55 | +## Guía de Clase |
| 56 | +1. Nuestro primer acceso con Gitlab |
| 57 | +2. Damos de alta un usuario sin role de administrador |
| 58 | +3. Creamos nuestro primer grupo para contener los proyectos de la bootcamp |
| 59 | +4. Creamos nuestro primer repositorio hola_mundo con el user creado |
| 60 | +5. Validamos que con user2 no podemos acceder y le damos permisos de developer |
| 61 | +6. Con user1(owner) creamos nuestro primer pipeline en el repositorio hola_mundo |
| 62 | +- Creamos el branch developer |
| 63 | +- ¿Cuando se ejecuta un pipeline? ¿Un commit, un merge, manual? ¿y en que branch? ¿AutoDevOps? Vaya lio! |
| 64 | +- Estructura básica de un pipeline con Hola Mundo |
| 65 | +- Mostrando las variables predefinidias |
| 66 | +- Control sobre que branch se ejecuta cada job |
| 67 | +- ¿y si falla un job? ¿Se puede puede omitir el fallo? |
| 68 | +- ¿y un Environment qué es? ¿Para que sirve? |
| 69 | +- ¿Se puede hacer un redeploy? |
| 70 | +- La hemos liado! Necesito un rollback! |
| 71 | +7. El juego de las variables de grupo, proyecto y pipeline |
| 72 | +8. Nuestra primera aplicación en flask |
| 73 | +- Como se hace un build de una app en docker |
| 74 | +- Deploy ficticio en docker in docker |
| 75 | +- Redeploy de la aplicación |
| 76 | +- Rollback de la aplicación |
| 77 | +9. Ejemplo de aplicación de spring con tests |
| 78 | +10. Conatiner Registry |
| 79 | +- Creando nuestras propias imágenes base |
| 80 | +- usando nuestras propias imágenes base |
| 81 | +12. Gitlab Pages |
| 82 | + |
| 83 | + |
| 84 | + |
| 85 | + |
0 commit comments