Pruebe en producción sin marcas de agua.
Funciona donde lo necesite.
Obtén 30 días de producto totalmente funcional.
Ténlo en funcionamiento en minutos.
Acceso completo a nuestro equipo de asistencia técnica durante la prueba del producto
Implementar aplicaciones en diferentes entornos a menudo lleva a problemas de compatibilidad. Una aplicación podría funcionar perfectamente en la máquina de un desarrollador, pero encontrar problemas durante las pruebas o en producción debido a diferencias en los sistemas operativos, dependencias o configuraciones. Docker resuelve este problema empaquetando aplicaciones en unidades autónomas que incluyen todo lo necesario para ejecutar la aplicación, asegurando que funcione de manera consistente en todas partes, desde el desarrollo hasta la producción.
Docker Compose ofrece beneficios poderosos para aplicaciones containerizadas, especialmente con su uso de variables de entorno para simplificar la configuración en diferentes entornos. Al permitir que las configuraciones clave se gestionen fuera del código, Docker Compose hace que el despliegue de aplicaciones complejas sea más sencillo y seguro. Basándose en estos beneficios, este artículo también mostrará cómo puede usar IronSecureDoc para el procesamiento seguro de documentos, aprovechando la flexibilidad de Docker Compose para manejar configuraciones de cifrado y redacción de manera eficiente.
Docker es un sistema de código abierto que facilita el desarrollo, despliegue y ejecución de aplicaciones en un sistema mediante la contenedorización. Los contenedores son unidades portátiles ultravolumen ligeras que contienen tanto una aplicación como sus dependencias para que se ejecuten uniformemente en todas partes, desde la máquina del desarrollador hasta los servidores de producción. Los contenedores comparten el núcleo del sistema operativo del host en comparación con las máquinas virtuales tradicionales y, por lo tanto, son mucho más rápidos y efectivos.
Esto significaría una plantilla virtualizada en forma de imágenes Docker para crear y mantener este conjunto de contenedores. Además, la plataforma contiene Docker Hub, que es de alguna manera un repositorio de imágenes de contenedores. La belleza de esta tecnología radica en su facilidad de uso en lo que respecta a la escalabilidad, portabilidad y eficiencia, lo cual es una de las razones por las que ha ganado tanta popularidad entre muchos flujos de trabajo de DevOps y desarrollo en la nube.
En Docker, una variable de entorno en forma de par clave-valor se utiliza para configurar los ajustes en la aplicación contenerizada. Tales variables pueden ser útiles para controlar el comportamiento de la propia aplicación sin modificar su código, ya que configuraciones como las credenciales de la base de datos y las claves de API o los modos de entorno (por ejemplo: desarrollo, producción) pueden cambiarse fácilmente.
En Docker, un atributo de entorno puede definirse dentro del Dockerfile, dentro del archivo docker-compose.yml, o pasarse en tiempo de ejecución usando el comando docker run. Con el uso de variables de entorno, Docker permite un despliegue de aplicaciones consistente y flexible en diferentes entornos y gestiona los datos sensibles como contraseñas y tokens de API de manera más efectiva.
Podemos definir variables de entorno en Docker de varias maneras. Se pueden definir con un archivo Docker Compose, el archivo docker-compose.yml, en un archivo de entorno, o incluso en tiempo de ejecución, mientras estás ejecutando el comando docker run. Recuerda que mantener las variables de entorno separadas del archivo de configuración principal facilita la organización de las variables. Aquí hay una lista de los diversos métodos que se pueden aplicar para definir tus variables.
Podemos definir variables de entorno directamente en el archivo Docker, utilizando la instrucción ENV. Eso puede ser útil si deseas incluir valores predeterminados para las variables dentro de tu imagen de Docker.
# Dockerfile
ENV APP_ENV=devepolment
ENV DATABASE_URL=postgres://user:password@db:1234/mydev
La configuración de las variables de entorno con los valores definidos en el archivo Docker conducirá automáticamente al tiempo de ejecución del contenedor.
Podemos definir variables de entorno para cada servicio dentro de un archivo docker-compose.yml con la ayuda de la palabra clave environment. Esto es útil cuando estás utilizando Docker Compose para gestionar un par de servicios.
version: '3.8'
services:
myapp:
image: myapp:latest
environment:
- APP_ENV=development
- DATABASE_URL=postgres://user:password@db:1234/mydev
Podemos especificar variables de entorno al ejecutar un contenedor usando el indicador -e junto con el comando docker run. Esto es bueno para valores transitorios y dinámicos, que probablemente no agregarías al archivo de Docker.
docker run -e APP_ENV=development -e DATABASE_URL=postgres://user:password@db:1234/mydev:latest
Podemos almacenar variables de entorno en un archivo como `.env` y cargarlas en tus contenedores Docker. En Docker Compose, nos referiremos a él con la directiva env file.
APP_ENV=production
DATABASE_URL=postgres://user:password@db:1234/mydev
Podemos gestionar múltiples archivos, con variables de entorno fuera de los archivos de configuración mediante el uso de archivos env.
IronSecureDoc para Docker permite a los desarrolladores añadir fácilmente una capacidad de procesamiento de documentos seguros a sus aplicaciones en contenedores. Finalmente, al haber aprendido Docker, puedes encapsular tu aplicación ASP.NET Core con IronSecureDoc en un entorno homogéneo que facilita su implementación y escalado. Para hacer esto, construirás un Dockerfile que orquesta la construcción de tu aplicación ASP.NET Core utilizando la biblioteca de IronSecureDoc y, posiblemente, otros scripts de instalación o configuraciones necesarias para que todo funcione.
Además, incluye un archivo docker-compose.yml que declara las dependencias del servicio y las variables de entorno, así como los puertos mapeados para funcionar. Esto hace que la realización de tareas de seguridad de documentos sea mucho más accesible, de modo que su aplicación pueda ejecutarse de manera eficiente y efectiva en un entorno diferente al utilizado durante el desarrollo o la producción. Instalación y Configuración de IronSecureDoc Al igual que en el caso de Docker, se necesitará una instalación y configuración adecuada de IronSecureDoc para aprovechar correctamente sus capacidades: cifrado de documentos, censura, etc.
IronSecureDoc ofrece una gama de potentes características para la seguridad de PDF y la gestión de documentos:
Integración con Docker: El soporte nativo para Docker simplifica la implementación y el escalado para aplicaciones en la nube o en las instalaciones.
Estas características hacen que IronSecureDoc sea una excelente opción para sectores que manejan documentos sensibles, como el legal, la salud y las finanzas.
Para instalar IronSecureDoc, ejecute el siguiente comando en una ventana de terminal o en el Símbolo del sistema para obtener la imagen de Docker de IronSecureDoc desde el repositorio.
docker pull ironsoftwareofficial/ironsecuredoc
Una vez que se haya descargado la imagen de IronSecureDoc. podemos usar el siguiente comando de docker-compose para ejecutar la imagen en el contenedor de Docker.
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
Utilizamos el contenedor de Docker para ejecutar el repositorio oficial de Iron Software. La línea de comando mostrada arriba se divide en varias partes que se explican a continuación.
docker container run
- Este comando utiliza la imagen dada para construir e iniciar un nuevo contenedor de Docker.IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY>
- Establezca una variable de entorno en el contenedor en ejecución llamada IronSecureDoc_LicenseKey que le permite activar y utilizar las funciones con licencia de IronSecureDoc. Reemplace <IRONSECUREDOC_LICENSE_KEY> con su clave real.-e ENVIRONMENT=Development
- La variable de entorno se establece en Development. Esto significa que el contenedor debe ejecutarse en modo de desarrollo. Normalmente, este contenedor se utiliza para los casos de prueba o depuración; aparte de eso, varía de las configuraciones de no producción.-e HTTP_PORTS=8080
- Esta variable de entorno se utiliza para especificar que el contenedor debe exponer y escuchar el puerto 8080 para el tráfico HTTP. Garantiza que se logre el acceso al servicio dentro del contenedor al pasar por este puerto en particular.ironsoftwareofficial/ironsecuredoc:latest
- Este es simplemente una imagen de Docker. El docker adecuado creará la versión más reciente de la imagen que está disponible en el registro de Docker para IronSecureDoc.La API REST de IronSecureDoc permite a los usuarios redactar, certificar y cifrar documentos después de lanzarlo en Docker. esta función también se menciona en otros lugares. Aquí hay un enlace a los puntos finales de la API y la documentación con Swagger UI, una vez que hayas lanzado IronSecureDoc en un contenedor Docker: http://localhost:8080/swagger/index.html
.
A partir del ejemplo anterior, podemos enviar una solicitud POST a la API de IronSecureDoc para enviar un documento para su encriptación:
curl -X 'POST' \
'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
-H 'accept: */*' \
-H 'Content-Type: multipart/form-data' \
-F 'pdf_file=@test.pdf;type=application/pdf'
Al hacer esto, IronSecureDoc obtendrá el documento y lo encriptará correctamente.
En resumen, las variables de entorno de Docker Compose permiten la configuración de aplicaciones de una manera muy flexible y eficiente, ya que los detalles de configuración se separan automáticamente del código de la aplicación. Como resultado, gestionar diferentes entornos como desarrollo, pruebas y producción es más sencillo, ya que solo es necesario cambiar variables como claves de API, credenciales de la base de datos y configuraciones de una aplicación en lugar de su código.
El uso de Docker Compose para implementar IronSecureDoc utiliza variables de entorno para manejar de forma segura la información de la licencia, por ejemplo, el IronSecureDoc_LicenseKey, y también para especificar los puertos HTTP o el modo de entorno preferido, ya sea desarrollo o producción, utilizando variables de entorno. El uso de variables de entorno para la configuración hace que sea más sencillo desplegar IronSecureDoc con configuraciones mucho menos desordenadas y difíciles de escalar, además de aumentar la seguridad.
Las funciones avanzadas se vuelven accesibles a través de una licencia válida de IronSecureDoc. La aplicación de la herramienta depende estrictamente de ciertos términos de uso. Aunque también puedes utilizar otras bibliotecas de alto rendimiento que Iron Software ofrece para hacer el proceso de desarrollo más fácil y rápido, proporcionando funcionalidades robustas en el trabajo con PDFs, reconocimiento de texto y códigos de barras para cualquier aplicación concebible.