We were following it about half of the time and we even added it to our former `.mdlrc` file. However, for some reason, MDL doesn't detect this rule when specified in the `.mdlrc` file, so we didn't notice we weren't following it in many cases. Now that we're using a style file to configure MDL, we can enable this rule again and apply it, since now MDL correctly includes it in its report.
161 lines
4.4 KiB
Markdown
161 lines
4.4 KiB
Markdown
# Usando Docker para desarrollo en local
|
|
|
|
Puedes usar Docker para tener una instalación local de Consul Democracy si:
|
|
|
|
- Estás teniendo problemas para instalar los [prerrequisitos](prerequisites.md) correctamente.
|
|
- Quieres tener una instalación local rápidamente para probar o hacer una demo.
|
|
- Prefieres no interferir con instalaciones de apps Rails existentes.
|
|
|
|
## Prerrequisitos
|
|
|
|
Debes tener instalador Docker y Docker Compose en tu ordenador:
|
|
|
|
### macOS
|
|
|
|
Puedes seguir la [guía oficial de docker](https://docs.docker.com/docker-for-mac/install/)
|
|
|
|
O si tienes instalado [homebrew](http://brew.sh) y [cask](https://caskroom.github.io/) puedes ejecutar:
|
|
|
|
```bash
|
|
brew install docker
|
|
brew install docker-compose
|
|
brew cask install docker
|
|
open -a docker
|
|
```
|
|
|
|
La aplicación de Docker te pedirá darle permisos e intrudocir tu contraseña.
|
|
|
|
### Linux
|
|
|
|
1. Instala Docker:
|
|
|
|
```bash
|
|
sudo apt-get update
|
|
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
|
|
sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main'
|
|
sudo apt-get update
|
|
apt-cache policy docker-engine
|
|
sudo apt-get install -y docker-engine
|
|
```
|
|
|
|
2. Instala Docker Compose
|
|
|
|
```bash
|
|
sudo curl -o /usr/local/bin/docker-compose -L "https://github.com/docker/compose/releases/download/1.15.0/docker-compose-$(uname -s)-$(uname -m)"
|
|
sudo chmod +x /usr/local/bin/docker-compose
|
|
```
|
|
|
|
### Windows
|
|
|
|
En la página de [https://www.docker.com/get-started](Empezando con Docker), en la sección "Docker Desktop", selecciona "Download for Windows", y ejecútalo. Debería tardar unos 5 minutos.
|
|
|
|
Si encuentras el error "WSL 2 installation incomplete":
|
|
|
|
1. Ejecuta PowerShell como administrator
|
|
1. Ejecuta `dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart`
|
|
1. Ejecuta `dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart`
|
|
1. Instala el [paquete de actualización de WSL2 para 64 bits](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi)
|
|
1. Ejecuta `wsl --set-default-version 2`
|
|
1. Reinicia el sistema
|
|
1. Se iniciará Docker Enginer. tardará unos minutos. Tras esto, tendrás la opción de usar la applicación de Docker Desktop y la orden `docker` de PowerShell/Bash
|
|
|
|
## Instalación
|
|
|
|
Clona el repositorio en tu ordenador y entra en el directorio:
|
|
|
|
```bash
|
|
git clone https://github.com/consuldemocracy/consuldemocracy.git
|
|
cd consuldemocracy
|
|
```
|
|
|
|
### macOS & Linux
|
|
|
|
Creamos nuestros ficheros de secrets y database basados en los ejemplos:
|
|
|
|
```bash
|
|
cp config/secrets.yml.example config/secrets.yml
|
|
cp config/database-docker.yml.example config/database.yml
|
|
```
|
|
|
|
Y generamos el contenedor:
|
|
|
|
```bash
|
|
POSTGRES_PASSWORD=password docker-compose build
|
|
```
|
|
|
|
Arrancamos el servicio de base de datos:
|
|
|
|
```bash
|
|
POSTGRES_PASSWORD=password docker-compose up -d database
|
|
```
|
|
|
|
Ahora podemos crear la base de datos e introducir datos de prueba:
|
|
|
|
```bash
|
|
POSTGRES_PASSWORD=password docker-compose run app rake db:create db:migrate
|
|
POSTGRES_PASSWORD=password docker-compose run app rake db:dev_seed
|
|
```
|
|
|
|
### Windows
|
|
|
|
Pendiente de ser completado... ¡Se agradecen las Contribuciones!
|
|
|
|
## Corriendo Consul Democracy en local con Docker
|
|
|
|
### macOS & Linux
|
|
|
|
Una vez instalado, puedes lanzar la aplicación con:
|
|
|
|
```bash
|
|
POSTGRES_PASSWORD=password docker-compose up
|
|
```
|
|
|
|
Y podrás acceder a la aplicación desde tu navegador visitando [http://localhost:3000](http://localhost:3000)
|
|
|
|
Adicionalmente, si quieres lanzar por ejemplo la consola de rails:
|
|
|
|
```bash
|
|
POSTGRES_PASSWORD=password docker-compose run app rails console
|
|
```
|
|
|
|
Para verificar que los contenedores estan corriendo usa:
|
|
|
|
```bash
|
|
docker ps .
|
|
```
|
|
|
|
Deberías obtener algo similar a:
|
|

|
|
|
|
### Windows
|
|
|
|
Pendiente de ser completado... ¡Se agradecen las Contribuciones!
|
|
|
|
## ¿Tienes problemas?
|
|
|
|
Ejecute los comandos en el **directorio de Consul Democracy**, para borrar todas las imágenes y contenedores anteriores del Docker de Consul Democracy. Luego, reinicie el [proceso de instalación](#instalacion) de Docker:
|
|
|
|
1. Quitar todas las imágenes de Consul Democracy:
|
|
|
|
```bash
|
|
docker-compose down --rmi all -v --remove-orphans
|
|
```
|
|
|
|
2. Quitar todos los contenedores de Consul Democracy
|
|
|
|
```bash
|
|
docker-compose rm -f -s -v
|
|
```
|
|
|
|
3. Verificar si todavía hay algún contenedor:
|
|
|
|
```bash
|
|
docker ps -a
|
|
```
|
|
|
|
Caso positivo, eliminar cada uno de forma manual:
|
|
|
|
```bash
|
|
docker container rm <container_id>
|
|
```
|