Logo Studenta

10 Multiples instancias de Postgres

Esta es una vista previa del archivo. Inicie sesión para ver el archivo original

1
00:00:05,860 --> 00:00:10,450
En esta clase quiero que tengamos dos instancias de posgrado y van a ser versiones diferentes de posgrados
2
00:00:10,690 --> 00:00:14,350
corriendo en nuestra misma computadora en un puerto diferente.
3
00:00:14,500 --> 00:00:15,700
Eso es súper genial.
4
00:00:15,700 --> 00:00:19,240
Y yo sé que más de uno va a decir bueno, pero eso para qué va a servir en la vida real?
5
00:00:19,270 --> 00:00:24,250
Muchas veces puede que ustedes tengan que tener la misma instancia de la aplicación corriendo o diferentes
6
00:00:24,250 --> 00:00:30,310
instancias de la base de datos corriendo para poder hacer alguna prueba o desarrollo, o inclusive hacer
7
00:00:30,310 --> 00:00:34,570
deploy de versiones específicas de base de datos, especialmente cuando hay cambios mayores de base
8
00:00:34,570 --> 00:00:34,840
de datos.
9
00:00:34,840 --> 00:00:39,000
Usted no va a querer simplemente usar la última versión sin haberla probado.
10
00:00:39,040 --> 00:00:41,680
Si su data va a funcionar como ustedes esperan.
11
00:00:41,800 --> 00:00:45,370
En fin, vamos a hacer lo siguiente Docker Container run.
12
00:00:45,400 --> 00:00:50,800
Y como quiero hacer esto en múltiples líneas, si yo estoy en la terminal de mago, SX y Linux, van
13
00:00:50,800 --> 00:00:52,000
a presionar un back slash.
14
00:00:52,270 --> 00:00:54,970
Si ustedes están en la PowerShell de Windows, es un back tick.
15
00:00:55,240 --> 00:00:59,050
Y yo les dejo ustedes aquí también en el pdf de los atajos.
16
00:00:59,050 --> 00:01:01,740
Aquí ustedes van a poder ver en la PowerShell que son back ticks.
17
00:01:02,440 --> 00:01:07,570
Ok, busquen donde está su back y presionen enter y eso los lleva a la siguiente línea Menos, menos
18
00:01:07,750 --> 00:01:14,200
name va a ser igual a pongámosle algo como PostgreSQL Alpha.
19
00:01:15,360 --> 00:01:17,550
Vamos a presionar back back Slash Enter.
20
00:01:17,760 --> 00:01:20,490
Vas a colocar la variable de entorno que va a ser PostgreSQL.
21
00:01:20,550 --> 00:01:25,200
Escriba al igual que yo, password o mejor dicho, igual como está en la documentación va a ser igual
22
00:01:25,200 --> 00:01:29,420
a mi pass uno va que slash enter.
23
00:01:29,670 --> 00:01:32,010
Luego voy a poner de publish.
24
00:01:32,250 --> 00:01:34,620
El puerto va a ser el 54 32.
25
00:01:34,620 --> 00:01:42,510
Yo voy a usar el por defecto con el puerto 54 32, bajes las enter y usemos la versión de PostgreSQL
26
00:01:43,110 --> 00:01:43,900
PostgreSQL.
27
00:01:43,920 --> 00:01:44,430
Nada más.
28
00:01:44,910 --> 00:01:50,340
Espero que nadie tenga la mala suerte de que cuando vuelvan a ejecutar este comando lo vuelva a descargar,
29
00:01:50,340 --> 00:01:55,560
porque eso significaría que en el momento que ustedes hicieron la descarga anterior, hubo un nuevo,
30
00:01:55,770 --> 00:02:01,140
una nueva publicación o una nueva versión de PostgreSQL, pero en este momento debería usar el.
31
00:02:01,500 --> 00:02:05,280
Y esto también es otra de las razones por las cuales se recomienda buena práctica que ustedes siempre
32
00:02:05,280 --> 00:02:11,340
establezcan el número de versión o el tag de la imagen que quieren utilizar, siempre en duro para evitar
33
00:02:11,340 --> 00:02:18,180
cambios repentinos, porque puede ser que ya sea una versión mayor y actualizaron su aplicación y eso
34
00:02:18,180 --> 00:02:19,950
no era lo que ustedes estaban deseando.
35
00:02:20,610 --> 00:02:25,200
Regresan ahora a hacer el comando de Docker Container.
36
00:02:25,240 --> 00:02:27,920
Ls van a ver que aquí está nuestra base a tus postres.
37
00:02:27,990 --> 00:02:32,870
Tenemos el puerto conectado y podríamos intentar conectarnos con Table Plus de nuevo.
38
00:02:32,880 --> 00:02:34,290
Esta desconexión ya no va a servir.
39
00:02:35,360 --> 00:02:37,280
Entonces voy a hacer nuevamente una nueva conexión.
40
00:02:37,610 --> 00:02:38,450
Postres de V.
41
00:02:39,410 --> 00:02:46,880
Vamos a ponerle post o post gratis menos Alpha 54 32 localhost.
42
00:02:47,360 --> 00:02:48,680
El user es password.
43
00:02:49,130 --> 00:02:51,830
El password es May Paz uno.
44
00:02:51,920 --> 00:02:56,000
Recuerden que nosotros le pusimos aquí cuando ejecutamos este comando es este pass uno.
45
00:02:57,370 --> 00:03:00,470
Y voy a darle el test.
46
00:03:00,520 --> 00:03:00,820
Ok?
47
00:03:00,850 --> 00:03:03,280
Hey, significaría que ya nos pudimos conectar y.
48
00:03:03,280 --> 00:03:03,940
Perfecto.
49
00:03:04,240 --> 00:03:06,370
Voy a darle safe y esa conexión está bien.
50
00:03:06,940 --> 00:03:12,040
Ahora vamos a usar una versión específica de PostgreSQL.
51
00:03:12,070 --> 00:03:13,690
No hace falta que ustedes vengan aquí.
52
00:03:13,900 --> 00:03:16,420
Pero todos estos tags es un histórico.
53
00:03:16,420 --> 00:03:21,100
Aquí no se van a borrar ningunas versiones, por más viejas que sean, por más diez 20 años que tengan,
54
00:03:21,100 --> 00:03:22,300
siempre van a quedarse aquí.
55
00:03:22,900 --> 00:03:25,840
Entonces, digamos que vamos a usar una versión específica de postres.
56
00:03:25,870 --> 00:03:32,770
Usemos la versión de postres con el Tag 14 menos a Alpha y 3.17.
57
00:03:33,230 --> 00:03:39,010
Entonces, eso básicamente sería la versión 14 de PostgreSQL Alpine que hace la referencia a Linux 3.17,
58
00:03:39,010 --> 00:03:39,970
la versión de Linux.
59
00:03:40,040 --> 00:03:42,960
Entonces este es el tag que yo voy a utilizar.
60
00:03:42,970 --> 00:03:43,830
Copien lo bueno.
61
00:03:43,840 --> 00:03:47,770
Obviamente ustedes no lo van a tener en la mano porque puede ser que tengan que rolear mucho, pero
62
00:03:47,770 --> 00:03:50,440
vengan aquí y van a poner el tag.
63
00:03:50,470 --> 00:03:57,880
Después de postre se van a escribir dos puntos y peguen, mejor dicho, escriban esto de 14 menos alta
64
00:03:57,880 --> 00:04:01,330
en 3.17 así como este oops oops oops.
65
00:04:01,470 --> 00:04:09,760
Os tengo que hacerme scroll para abajo y regresemos aquí y ejecuten ese ese tag PostgreSQL, esa versión.
66
00:04:10,000 --> 00:04:15,550
Presionen enter y esto va a ser la descarga local, que en mi caso yo yo ya la tenía, pero necesito
67
00:04:15,550 --> 00:04:20,770
que ustedes resuelvan los conflictos que les está dando los errores en consola.
68
00:04:21,070 --> 00:04:29,890
Por favor resuelvan los todos y después de hacer esta tarea deberían de ver aquí los dos contenedores
69
00:04:29,890 --> 00:04:30,850
corriendo y en verde.
70
00:04:31,090 --> 00:04:32,380
Tiene que corregir los errores.
71
00:04:32,380 --> 00:04:33,820
Aquí van a pasarles varias cosas.
72
00:04:33,820 --> 00:04:36,160
Lean los errores, lean los errores.
73
00:04:36,310 --> 00:04:42,370
A la segunda instancia de post le van a poner el nombre de Beta y van a tener que hacer ciertos cambios.
74
00:04:42,370 --> 00:04:49,000
También Estoy esperando que eso esté corriendo en el puerto 54 33 y que por acá me voy a conectar al
75
00:04:49,000 --> 00:04:49,420
puerto.
76
00:04:49,420 --> 00:04:51,490
54 33.
77
00:04:52,760 --> 00:04:55,580
Y debería conectarme a la segunda instancia de PostgreSQL.
78
00:04:56,090 --> 00:04:58,510
Entonces van a ponerle paz a este ejercicio.
79
00:04:58,520 --> 00:05:01,220
La tarea es que corran una segunda instancia de PostgreSQL.
80
00:05:01,220 --> 00:05:06,890
Obviamente este comando me está dando un conflicto por la misma razón que está aquí definido.
81
00:05:06,910 --> 00:05:08,060
Entonces póngale pausa.
82
00:05:08,300 --> 00:05:09,080
Mucha suerte.
83
00:05:09,230 --> 00:05:13,430
Echen a andar esas dos instancias de PostgreSQL y mi solución en
unos instantes.
84
00:05:13,700 --> 00:05:14,360
Mucha suerte.
85
00:05:14,410 --> 00:05:14,930
Pasa ahora.
86
00:05:17,470 --> 00:05:18,220
Lo lograron hacer?
87
00:05:18,250 --> 00:05:19,030
Espero que sí.
88
00:05:19,060 --> 00:05:21,730
Y si no, pues resolvamos el problema nuevamente.
89
00:05:21,740 --> 00:05:25,380
Si vuelvo a intentar ejecutar el comando, lean siempre los mensajes de error.
90
00:05:25,390 --> 00:05:26,620
Me dicen que hay un conflicto.
91
00:05:26,620 --> 00:05:30,610
El contenedor con el nombre post alfa ya está en el contenedor.
92
00:05:30,610 --> 00:05:33,850
Con ese hash tienes que removerlo o renombrarlo.
93
00:05:33,850 --> 00:05:40,150
Si quiero rehusar ese nombre a bueno, entonces tengo que ponerle el nombre en lugar de PostgreSQL Alpha.
94
00:05:40,390 --> 00:05:42,070
Vamos a ponerle PostgreSQL Beta.
95
00:05:43,150 --> 00:05:44,230
Voy a presionar Enter.
96
00:05:44,230 --> 00:05:45,490
Y ahora tenemos otro error.
97
00:05:45,490 --> 00:05:46,690
Me dice Error.
98
00:05:47,440 --> 00:05:50,960
Vamos a buscarlo en el endpoint de Progress Beta tal.
99
00:05:51,370 --> 00:05:57,760
Me dice que hacer el bind de localhost del puerto o la dirección cero punto 0.0 de mi local.
100
00:05:57,850 --> 00:06:04,740
Dos 54 34 fallo porque el puerto ya esta a lo queire decir, ya esta alojado o ya esta asignado?
101
00:06:04,750 --> 00:06:06,070
Creo que sería la palabra correcta.
102
00:06:07,320 --> 00:06:13,820
Entonces esto también nos indica de que nosotros sólo podemos tener un puerto asignado a un contenedor.
103
00:06:13,830 --> 00:06:15,990
Es decir, un puerto es una comunicación 1 a 1.
104
00:06:15,990 --> 00:06:20,300
No puedo tener un mismo puerto escuchando diferentes puertos de otros contenedores.
105
00:06:20,310 --> 00:06:30,090
Entonces les había pedido que este lo colocáramos en el puerto 34, 33 o 54 33 Pero de mi computadora
106
00:06:30,240 --> 00:06:35,910
aquí si puede ser el mismo puerto, porque recuerden que son aislados y lo demás debería estar igual.
107
00:06:35,940 --> 00:06:39,000
Voy a presionar Enter y me dice hay un error de conflicto.
108
00:06:39,000 --> 00:06:43,770
Me dice que el puerto, que el contenedor con el nombre PostgreSQL ya está definido.
109
00:06:44,040 --> 00:06:46,830
Pero que raro van a decir ustedes, pero yo no tengo.
110
00:06:47,520 --> 00:06:52,770
O sea, yo no lo he levantado, pero en el momento en el que ustedes lo intenten van a ver que aquí
111
00:06:52,770 --> 00:06:54,300
ya tienen ese contenedor.
112
00:06:55,950 --> 00:07:01,500
Eso es como que OK, lo intentó hacer pero falló la parte del puerto, lo que significa de que este
113
00:07:01,530 --> 00:07:04,230
de aquí yo lo tengo que remover para volverlo a crear.
114
00:07:04,470 --> 00:07:06,390
Podemos borrarlo por aquí si ustedes desean.
115
00:07:06,390 --> 00:07:07,230
Eso sería tan fácil.
116
00:07:07,230 --> 00:07:10,200
Pero nuevamente tratemos de acostumbrarnos a trabajar con la consola.
117
00:07:10,200 --> 00:07:15,780
Entonces Docker container ls van a ver que aquí sólo tengo el Alpha porque es el que está corriendo.
118
00:07:16,230 --> 00:07:20,850
Ah, para mandar que me diga todos los contenedores tengo que buscar el beta, por eso la importancia
119
00:07:20,850 --> 00:07:29,790
de los nombres y ese seis A ok lo que container R del seis A en mi caso Enter y ahora ya puedo volver
120
00:07:29,790 --> 00:07:38,280
a ejecutar el comando de Docker container run name v password tal cosa Puerto 54 33 con el puerto 54
121
00:07:38,280 --> 00:07:40,920
32 del contenedor tal versión de PostgreSQL.
122
00:07:40,920 --> 00:07:46,440
Presiono enter, se levanta, regreso aquí y ya los vemos los dos corriendo.
123
00:07:46,800 --> 00:07:50,160
Eso significaría que yo puedo venir acá y probar el puerto.
124
00:07:50,160 --> 00:07:58,920
54 33, que es una instancia de post que sería el alfa y el beta sería el 54 33 y también responde correctamente.
125
00:07:59,190 --> 00:08:06,120
Ok, podemos darle save, pueden borrar esta referencia que tenemos ahí y también les voy a pedir que
126
00:08:06,120 --> 00:08:11,160
bajen ambos ambos contenedores y borren los con el comando de de los containers.
127
00:08:11,310 --> 00:08:11,570
Ok?
128
00:08:12,000 --> 00:08:16,620
Para ponerle pausa el video necesito que bajen ambos contenedores y lo remuevan los dos.
129
00:08:16,620 --> 00:08:19,500
Bueno la verdad no hace falta que lo hagan con el punto, pueden hacerlo como ustedes quieran.
130
00:08:19,500 --> 00:08:22,680
Les voy a enseñar otra técnica y pasan este momento.
131
00:08:22,680 --> 00:08:24,060
Borren los dos mediante comando.
132
00:08:24,060 --> 00:08:28,110
No lo hagan mediante el docker de esto, porque simplemente sería tocar esos dos botones.
133
00:08:28,110 --> 00:08:29,620
Ok, pausa.
134
00:08:29,640 --> 00:08:30,390
Hagan esta tarea.
135
00:08:33,410 --> 00:08:33,740
Ok.
136
00:08:33,800 --> 00:08:34,420
Lo lograron hacer?
137
00:08:34,430 --> 00:08:35,070
Espero que sí.
138
00:08:35,090 --> 00:08:41,060
Y si no removemos los mismos Docker Docker container ls Voy a ver que están activos.
139
00:08:41,570 --> 00:08:46,460
Voy a puedo detener a ambos o removerlos a ambos de manera forzada como ustedes lo hayan querido hacer.
140
00:08:46,700 --> 00:08:55,490
Docker Container RM y voy a hacerlo de manera forzada el seis 53 que sería este de aquí y luego el 88
141
00:08:56,150 --> 00:08:59,650
y luego sería espacio el 88.
142
00:08:59,660 --> 00:09:05,870
Entonces puedo mandar después del RM diferentes ideas de los contenedores, presiono Enter y ahí están
143
00:09:05,870 --> 00:09:06,490
los dos.
144
00:09:06,500 --> 00:09:09,230
Ya no tengo nada y nos vemos en el próximo vídeo.

Continuar navegando

Materiales relacionados