Puedes usar Docker para tener una instalación local de Consul Democracy si:
- Estás teniendo problemas para instalar los prerrequisitos correctamente.
- Quieres tener una instalación local rápidamente para probar o hacer una demo.
- Prefieres no interferir con instalaciones de apps Rails existentes.
Debes tener instalador Docker y Docker Compose en tu ordenador:
Puedes seguir la guía oficial de docker
O si tienes instalado homebrew y cask puedes ejecutar:
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.
- Instala Docker:
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
- Instala Docker Compose
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
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":
- Ejecuta PowerShell como administrator
- Ejecuta
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
- Ejecuta
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- Instala el paquete de actualización de WSL2 para 64 bits
- Ejecuta
wsl --set-default-version 2
- Reinicia el sistema
- 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
Clona el repositorio en tu ordenador y entra en el directorio:
git clone https://github.com/consuldemocracy/consuldemocracy.git
cd consuldemocracy
Creamos nuestros ficheros de secrets y database basados en los ejemplos:
cp config/secrets.yml.example config/secrets.yml
cp config/database-docker.yml.example config/database.yml
Y generamos el contenedor:
POSTGRES_PASSWORD=password docker-compose build
Arrancamos el servicio de base de datos:
POSTGRES_PASSWORD=password docker-compose up -d database
Ahora podemos crear la base de datos e introducir datos de prueba:
POSTGRES_PASSWORD=password docker-compose run app rake db:create db:migrate
POSTGRES_PASSWORD=password docker-compose run app rake db:dev_seed
Pendiente de ser completado... ¡Se agradecen las Contribuciones!
Una vez instalado, puedes lanzar la aplicación con:
POSTGRES_PASSWORD=password docker-compose up
Y podrás acceder a la aplicación desde tu navegador visitando http://localhost:3000
Adicionalmente, si quieres lanzar por ejemplo la consola de rails:
POSTGRES_PASSWORD=password docker-compose run app rails console
Para verificar que los contenedores estan corriendo usa:
docker ps .
Deberías obtener algo similar a:
Pendiente de ser completado... ¡Se agradecen las Contribuciones!
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 de Docker:
- Quitar todas las imágenes de Consul Democracy:
docker-compose down --rmi all -v --remove-orphans
- Quitar todos los contenedores de Consul Democracy
docker-compose rm -f -s -v
- Verificar si todavía hay algún contenedor:
docker ps -a
Caso positivo, eliminar cada uno de forma manual:
docker container rm <container_id>