Vamos a crear un docker compose con adminer llamo adminer-postgres.yml
version: "3.1" services: db: image: postgres container_name: postgresql volumes: - "/home/eduard/alfresco/database:/var/lib/postgresql/data" #restart: always environment: POSTGRES_USER: alfresco_pg POSTGRES_PASSWORD: 123456 adminer: image: adminer container_name: adminer #restart: always ports: - 8080:8080
Vamos a descarlar la imagen de adminer
docker pull adminer
Y vamos a ejecutar el fichero
docker-compose -f adminer-postgres.yml up
y nos contesta
WARNING: The Docker Engine you're using is running in swarm mode. Compose does not use swarm mode to deploy services to multiple nodes in a swarm. All containers will be scheduled on the current node. To deploy your application across the swarm, use `docker stack deploy`. Creating adminer ... done Creating postgresql ... Attaching to postgresql, adminer postgresql | 2018-03-09 07:29:42.151 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432 postgresql | 2018-03-09 07:29:42.151 UTC [1] LOG: listening on IPv6 address "::", port 5432 postgresql | 2018-03-09 07:29:42.155 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432" postgresql | 2018-03-09 07:29:42.165 UTC [24] LOG: database system was interrupted; last known up at 2018-03-08 12:30:27 UTC adminer | PHP 7.2.3 Development Server started at Fri Mar 9 07:29:42 2018 postgresql | 2018-03-09 07:29:42.206 UTC [24] LOG: database system was not properly shut down; automatic recovery in progress postgresql | 2018-03-09 07:29:42.208 UTC [24] LOG: redo starts at 0/1634578 postgresql | 2018-03-09 07:29:42.208 UTC [24] LOG: invalid record length at 0/16345B0: wanted 24, got 0 postgresql | 2018-03-09 07:29:42.208 UTC [24] LOG: redo done at 0/1634578 postgresql | 2018-03-09 07:29:42.223 UTC [1] LOG: database system is ready to accept connections
Ahora tenemos que averiguar el nombre del servidor del contenedor de postgres para ello ejecutamos
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3da1fbea178c adminer "entrypoint.sh docke…" 3 minutes ago Up 3 minutes 0.0.0.0:8080->8080/tcp adminer c6a424b1342c postgres "docker-entrypoint.s…" 3 minutes ago Up 3 minutes 5432/tcp postgresql
y obtenemos el id del container (c6a424b1342c) de postgres y el nombre de la imagen que le hemos proporcionado en el fichero "yml" (container_name=postgresql)
y ejecutamos
docker container inspect c6a424b1342c
O también
docker container inspect postgresql
Y escogiendo estos datos, vemos que en este caso coincide el nombre del host del container y el id del container
"Config": {
"Hostname": "c6a424b1342c",
Y si vamos al navegador y le pasamos la url localhost:8080 y le proporcionamos:
- System: PostgreSQL
- Server: que puede ser tanto el id del container como el nombre del container (c6a424b1342c o postgresql)
- Username: alfresco_pg
- Password: 123456
Con lo que hemos podido matar 2 pájaros de un tiro, por una parte montar Postgres, por otra adminer y luego orquestarlos.
No hay comentarios :
Publicar un comentario