OteroWeb

Table of Contents

DE ESTO QUE ESTA ARRIBA VAMOS A REFORMARLO

debo copiar package.json solamente

VAMOS A ESTO

Vamos a reformarlo asi copiamos solo el package json y despues del npm install que es la instalacion de dependencias hacemos eso y docker en la linea 9 docker se da cuenta que no debe copiar de nuevo el package json

ahora si cambio las cosas usa el cache del npm install cada vez que reconstruya

hago cambios

cambio a node mon y queda asi para estar pendiente

toalsa

DA un error de dependencias como anteriormente tenia que desaparece node_modules

entonces tenemos que especificar el nombre del archivo a la hora de la ejecucion

nuevo

redes conectando dos contenedores

Comandos:
$ docker network ls (listo las redes)
$ docker network create –atachable plazinet (creo la red)

esta eituqeta da la posibilidad de conectarse con otros contenedores
$ docker inspect plazinet (veo toda la definición de la red creada)
$ docker run -d –name db mongo (creo el contenedor de la BBDD)
$ docker network connect plazinet db (conecto el contenedor “db” a la red “platzinet”)
$ docker run -d -name app -p 3000:3000 –env MONGO_URL=mondodb://db:27017/test platzi (corro el contenedor “app” y le paso una variable)
$ docker network connect plazinet app (conecto el contenedor “app” a la red “plazinet”)

Docker viene con unas redes ya hechas

$ docker rund –name app -p 3000:3000 –env MONGO_URL=mondodb://db:27017/test platzi (corro el contenedor “app” y le paso una variable) aparentemente esta mal

es el default bridge es por la retrocompiabilitaddad

host es larepresentacion de la red reales interfaces todal a network e intertfaces reales de mi maquina

none es ningun tipo de aceso a redes basicamente edhabilitar el networkimng

coonectadmos

y ahora damos inspect y veras

tiene una vvariable de entorno

docker compose

docker compose viene en windows y mac en linux hay que instlarla

escribir de forma declarativa

primero versiones eso indica las versiones permitidas e incluso cambias las llaves

############################################################
# Dockerfile para configurar aplicación en node.js - Express
############################################################

# Establece la imagen base
FROM node

# Crear directorio de trabajo
RUN mkdir -p /opt/app

# Se estable el directorio de trabajo
WORKDIR /opt/app

# Instala los paquetes existentes en el package.json
COPY ./project/package.json .

RUN npm install --quiet

# Copia la Aplicación
COPY ./project/. .

# Instalación de Nodemon en forma Global
# Al realizarse cambios reiniciar el servidor
RUN npm install nodemon -g --quiet

# Expone la aplicación en el puerto 8000
EXPOSE 8000

# Inicia la aplicación al iniciar al contenedor
CMD nodemon -L --watch . app.js

clase 23

Comandos:
$ docker network ls (listo las redes)
$ docker network inspect docker_default (veo la definición de la red)
$ docker-compose logs (veo todos los logs)
$ docker-compose logs app (solo veo el log de “app”)
$ docker-compose logs -f app (hago un follow del log de app)
$ docker-compose exec app bash (entro al shell del contenedor app)
$ docker-compose ps (veo los contenedores generados por docker compose)
$ docker-compose down (borro todo lo generado por docker compose)

eso es por le nombre de la carpeta

docker compose cra una red
crea esa red porque es el nombre del directorio y default porque la crea automaticamente

con docker compose los nombres son diferntes pero docker se encarga de conectarlos entre si

no necesitamos poner el docker -it y usamos el nombre del servicio

usamos la imagen con .

command: npx nodemon --legacy-watch index.js
CMD ["npx", "nodemon", "-L", "index.js"]

docker run --env-file ./.env image

asdasd dasdasdasdad  

Usa la barra lateral para añadir la URL del repositorio GitHub a incrustar.

php artisan serve

CMD ["npx", "nodemon", "-L", "index.js"]
ShellScript
shell 
1312321

Archivo
git commit -m "hola"

esto es una preuba 
21312312
312321312312

asi lo ignoro

poniendole dos puntos (:) le digo que no toque los dos puntos

alli en ese punto no hay hot reload esta funcionando pero alli no funciona

ahora usamos este comando

con NPX porque no esta instalado globalmente node mon

instalar https://platzi.com/blog/django-docker/

Compose OVERRIDE

Comandos:
$ touch docker-compose.override.yml (creo el archivo override)
$ docker-compose up -d (crea los servicios/contenedores)
$ docker-compose exec app bash (entro al bash del contenedor app)
$ docker-compose ps (veo los contenedores del compose)
$ docker-compose up -d –scale app=2 (escalo dos instancias de app, previamente tengo que definir un rango de puertos en el archivo compose)
$ docker-compose down (borro todo lo creado con compose)}

sirve para hacer pequeños cambios sobre el composer override

esto agrega dos variables la de docker y la otra

Nota los puertos no funcionan bien es mejor dejarlos en un solo lugar

podemos escalar en mas de un puerto con el comando

docker-compose up -d –scale app=2 (escalo dos instancias de app, previamente tengo que definir un rango de puertos en el archivo compose)
asi se define el rango

creando varios ambientes

https://medium.com/it-dead-inside/making-sense-of-docker-compose-overrides-efb757460d64

docker-compose up -d --scale [nameService]=[numberContainers]

clase 26 Administrando tu ambiente de Docker

Comandos:
$ docker ps -a (veo todos los contenedores de mi máquina)
$ docker container prune (borra todos los contenedores inactivos)
$ docker rm -f $(docker ps -aq) (borra todos los contenedores que estén corriendo o apagados)
$ docker network ls (lista todas las redes)
$ docker volume ls (lista todos los volumes)
$ docker image ls (lista todas las imágenes)
$ docker system prune (borra todo lo que no se esté usando)
$ docker run -d –name app –memory 1g platziapp (limito el uso de memoria)
$ docker stats (veo cuantos recursos consume docker en mi sistema)
$ docker inspect app (puedo ver si el proceso muere por falta de recursos)

# Remove All sudo docker rm -vf $(sudo docker ps -a -q) sudo docker rmi -f $(sudo docker images -a -q) sudo docker system prune -f sudo docker volume prune -f

ShellScript
# Eliminar todos los contenedores que no estan corriendo o apagados
docker container prune

# Eliminar todos los contenedores incluyendo los que estan corriendo (-q: muestra ID, -a: todos, -f: fuerza bruta)
docker rm -f $(docker ps -aq)

# Listar redes
docker network ls

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Suscribete para enterarte de lo que hago

Enterate antes de novedades, promociones y experimentos.

Muy Pronto

OteroWeb

Desarrollador FullStack Desde el 2008 con PHP y Javascript

Servicios

Desarrollo Movil

Desarrollo Web

Asesoria Productos Digitales

Enlaces

Sobre Mi

Articulos

Portafolio

Barquisimeto, Venezuela

+58 4125157489

© 2022 creado por Oteroweb.com

Cookie Policy

This website uses cookies to ensure you get the best experience on our website.