The alternative text of the image was useless, and we were depending on an external server in order to display it. Furthermore, the text inside the image was pretty small. So we're displaying the output of the command as plain text.
3.3 KiB
Usando Docker para desarrollo en local
Prerrequisitos
Debes tener instalados Docker y Docker Compose en tu ordenador. El proceso de instalación depende de tu sistema operativo.
macOS
Puedes seguir la guía oficial de Docker.
O, si tienes instalado homebrew, puedes ejecutar:
brew install docker
brew install docker-compose
brew install --cask docker
open -a docker
La aplicación de Docker te pedirá darle permisos e introducir tu contraseña.
Linux
- Instala Docker y Docker Compose. Por ejemplo, en Ubuntu 22.04:
sudo apt-get install docker.io docker-compose-v2
Windows
La documentación oficial de Docker incluye una página con instrucciones para instalar Docker Desktop en Windows. En esa página, descarga Docker Desktop para Windows y ejecútalo.
Instalación
Clona el repositorio en tu ordenador y entra en el directorio:
git clone https://github.com/consuldemocracy/consuldemocracy.git
cd consuldemocracy
A continuación, crea los ficheros de config/secrets.yml y config/database.yml basados en los ficheros de ejemplo:
cp config/secrets.yml.example config/secrets.yml
cp config/database-docker.yml.example config/database.yml
Ahora genera la imagen con:
POSTGRES_PASSWORD=password docker-compose build
Y crea los contenedores:
POSTGRES_PASSWORD=password docker-compose create
Por último, crea la base de datos e introduce 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
Arranque de Consul Democracy en desarrollo
Una vez instalada, 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 están ejecutándose usa:
docker ps
Deberías obtener algo similar a:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
603ec83b78a6 consuldemocracy-app "./docker-entrypoint…" 23 seconds ago Up 22 seconds consuldemocracy-app-run-afb6d68e2d99
d57fdd9637d6 postgres:13.16 "docker-entrypoint.s…" 50 minutes ago Up 22 seconds 5432/tcp consuldemocracy-database-1
Resolución de problemas
Ejecuta los siguientes comandos en el directorio de Consul Democracy para borrar todas las imágenes y contenedores anteriores del Docker de Consul Democracy. Luego, comienza de nuevo con el proceso de instalación de Docker.
- Quita todas las imágenes de Consul Democracy:
docker-compose down --rmi all -v --remove-orphans
- Quita todos los contenedores de Consul Democracy:
docker-compose rm -f -s -v
- Verifica si todavía hay algún contenedor:
docker ps -a
- En caso afirmativo, elimina cada uno de forma manual:
docker container rm <container_id>