Entradas

Mostrando entradas de abril, 2023

Ldap

 Para configurar MediaWiki con Active Directory (AD), puedes usar la extensión LDAPAuthentication2 y seguir los siguientes pasos: **Paso 1: Descargar e instalar la extensión LDAPAuthentication2** Descarga la extensión LDAPAuthentication2 en tu servidor MediaWiki ejecutando el siguiente comando en la carpeta `extensions` de tu instalación de MediaWiki: ```bash cd /path/to/mediawiki/extensions git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/LDAPAuthentication2 ``` **Paso 2: Descargar e instalar las dependencias** La extensión LDAPAuthentication2 requiere la extensión LDAPProvider y algunas bibliotecas adicionales. Descarga e instala estas dependencias utilizando los siguientes comandos: ```bash cd /path/to/mediawiki/extensions git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/LDAPProvider cd LDAPProvider composer install --no-dev ``` **Paso 3: Habilitar las extensiones en LocalSettings.php** Abre el archivo `LocalSettings.php` en la carpeta principal de tu i...

Copia

 Para habilitar el módulo `mod_ssl` en Apache dentro del contenedor de Docker, sigue los siguientes pasos: **Paso 1: Actualizar el Dockerfile** Modifica tu archivo `Dockerfile` para habilitar el módulo `mod_ssl` e instalar la utilidad `openssl`. Agrega las líneas relevantes en la sección apropiada de tu archivo `Dockerfile` como se muestra a continuación: ```Dockerfile FROM php:7.3-apache # Instalar dependencias y extensiones necesarias para MediaWiki RUN apt-get update && apt-get install -y \     libicu-dev \     libzip-dev \     unzip \     && docker-php-ext-install -j$(nproc) intl mysqli opcache zip # Habilitar mod_rewrite y mod_ssl RUN a2enmod rewrite ssl # Instalar openssl RUN apt-get install -y openssl # Copiar el archivo de configuración personalizado de Apache y de Apache SSL COPY ./000-default.conf /etc/apache2/sites-available/000-default.conf COPY ./default-ssl.conf /etc/apache2/sites-available/default-ssl.conf # Ins...

Migra2

 No hay problema, aquí tienes cómo migrar tu instancia actual de MediaWiki a `docker-compose` utilizando PHP 7.3 y Apache. **Paso 1: Crear el archivo docker-compose.yml** Crea un archivo llamado `docker-compose.yml` en un nuevo directorio vacío. Agrega el siguiente contenido al archivo: ```yaml version: '3.7' services:   mediawiki:     build:       context: .       args:         MEDIAWIKI_VERSION: 1.35.2     ports:       - 8080:80     volumes:       - ./mediawiki-images:/var/www/html/images       - ./LocalSettings.php:/var/www/html/LocalSettings.php     depends_on:       - database   database:     image: mysql:5.7     environment:       MYSQL_DATABASE: mediawiki       MYSQL_USER: mediawiki_user       MYSQL_PASSWORD: mediawiki_password       MYSQL...

Mediawiki

 Entiendo que deseas un enfoque más integrado utilizando `docker-compose` y que las extensiones provienen de la misma fuente que MediaWiki. Aquí tienes una solución actualizada para lograr esto: **Paso 1: Crear el archivo docker-compose.yml** Crea un archivo llamado `docker-compose.yml` en un nuevo directorio vacío. Agrega el siguiente contenido al archivo: ```yaml version: '3.7' services:   mediawiki:     build:       context: .       args:         MEDIAWIKI_VERSION: 1.35.2     ports:       - 8080:80     volumes:       - ./mediawiki-images:/var/www/html/images       - ./LocalSettings.php:/var/www/html/LocalSettings.php     depends_on:       - database   database:     image: mysql:5.7     environment:       MYSQL_DATABASE: mediawiki       MYSQL_USER: mediawiki_user   ...

Sql

 Para exportar la base de datos de MediaWiki antes de realizar la migración a Docker, sigue estos pasos: 1. **Realiza un volcado de la base de datos actual:**    Utiliza la herramienta `mysqldump` para exportar la base de datos actual de MediaWiki. Asegúrate de reemplazar `mediawiki_db`, `db_user` y `db_password` con los valores correctos para tu configuración.    ````bash    mysqldump -u db_user -p db_password mediawiki_db > mediawiki_db.sql    ```    Esto creará un archivo `mediawiki_db.sql` con la estructura y los datos de tu base de datos de MediaWiki actual. 2. **Copia el volcado de la base de datos al directorio de trabajo de Docker:**    Copia el archivo `mediawiki_db.sql` al directorio `mediawiki-docker` que creaste en la respuesta anterior. Este archivo se utilizará para importar los datos en el contenedor de MySQL. 3. **Importa el volcado de la base de datos en el contenedor de MySQL:**    Para impor...

Docker ubuntu

 Para instalar Docker y Docker Compose en Ubuntu 22.04 utilizando Ansible, puedes crear un playbook y dividir las tareas en varios archivos. A continuación se muestra cómo estructurar los archivos y el contenido de cada uno de ellos. **Estructura de archivos:** ``` ansible-docker-install/ |-- roles/ |   |-- docker/ |   |   |-- tasks/ |   |   |   |-- main.yml |   |   |   |-- install_dependencies.yml |   |   |   |-- install_docker.yml |   |-- docker-compose/ |   |   |-- tasks/ |   |   |   |-- main.yml |   |   |   |-- install_docker_compose.yml |-- playbook.yml ``` **playbook.yml:** ```yaml - name: Install Docker and Docker Compose on Ubuntu 22.04   hosts: all   become: yes   roles:     - docker     - docker-compose ``` **roles/docker/tasks/main.yml:** ```yaml --- - name: Install Docker dependencies   include_tasks: install_dependencies.yml -...

Migración

 Migrar MediaWiki a Docker con Apache, LDAP y certificados SSL implica varios pasos. Aquí hay una guía paso a paso para realizar esta tarea: ### 1. Preparación Antes de comenzar, asegúrese de tener Docker y Docker Compose instalados en su servidor. ### 2. Crear directorios y archivos necesarios Cree una carpeta en su servidor para almacenar sus archivos de configuración y volúmenes de datos persistentes. Por ejemplo: ``` mkdir mediawiki-docker cd mediawiki-docker ``` ### 3. Crear el archivo `docker-compose.yml` Cree un archivo `docker-compose.yml` en el directorio `mediawiki-docker` con el siguiente contenido: ```yaml version: '3.8' services:   mediawiki:     image: mediawiki     container_name: mediawiki     volumes:       - ./images:/var/www/html/images       - ./LocalSettings.php:/var/www/html/LocalSettings.php     depends_on:       - database     networks:       - ...

Dicker

 El archivo `docker-compose.yml` a continuación crea un entorno con Apache, PHP 7.3 y MySQL 5.7 (la versión 14.14 que mencionaste se refiere a una versión del cliente MySQL, no del servidor). Aquí tienes un ejemplo de `docker-compose.yml`: ```yaml version: '3' services:   web:     image: php:7.3-apache     volumes:       - ./html:/var/www/html     ports:       - "8080:80"     depends_on:       - db   db:     image: mysql:5.7     environment:       MYSQL_ROOT_PASSWORD: mi_contraseña_root       MYSQL_DATABASE: mi_base_de_datos       MYSQL_USER: mi_usuario       MYSQL_PASSWORD: mi_contraseña     volumes:       - ./mysql-data:/var/lib/mysql     ports:       - "3306:3306"   phpmyadmin:     image: phpmyadmin/phpmyadmin     environment:  ...

Php

 Para cambiar de PHP 8 a PHP 7.3 en Ubuntu 16.04, sigue estos pasos: **Paso 1: Agregar repositorio de PHP** Primero, necesitas agregar el repositorio de PHP para obtener las versiones más recientes de PHP. Ejecuta los siguientes comandos en la terminal para agregar el repositorio Ondřej Surý PPA: ```bash sudo apt-get install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt-get update ``` **Paso 2: Desinstalar PHP 8** Antes de instalar PHP 7.3, debes desinstalar PHP 8. Ejecuta los siguientes comandos: ```bash sudo apt-get remove php8.0-common --purge ``` **Paso 3: Instalar PHP 7.3** Ahora puedes instalar PHP 7.3 ejecutando los siguientes comandos: ```bash sudo apt-get install php7.3 ``` También debes instalar los módulos necesarios para PHP 7.3. Por ejemplo, si necesitas los módulos `mbstring`, `mysql`, `xml` y `gd`, ejecuta lo siguiente: ```bash sudo apt-get install php7.3-mbstring php7.3-mysql php7.3-xml php7.3-gd ``` **Paso 4: Cambiar la versión de PHP p...

Sábados

 Claro, aquí tienes algunos ejemplos de cómo puedes filtrar los datos en Grafana para mostrar solo los días de la semana sin incluir sábados y domingos utilizando Prometheus como fuente de datos. 1. Utilizando la función `day_of_week()` y la función `bool` en la consulta PromQL:    ````promql    sum by (label) (your_metric{your_label="your_value"} * on() (day_of_week(timestamp(vector(time()))) != bool 0) * on() (day_of_week(timestamp(vector(time()))) != bool 6))    ```    En esta consulta, reemplaza `your_metric`, `your_label` y `your_value` con los nombres de tus métricas y etiquetas correspondientes. 2. Otra opción es usar `avg_over_time` y `count_over_time` para calcular la media de los datos solo en los días de la semana:    ````promql    sum by (label) (        (avg_over_time(your_metric{your_label="your_value"}[1w]) * count_over_time(day_of_week(timestamp(vector(time()))) != bool 6 and day_of_week...

Peta2

 Para evitar que la instalación de `tzdata` en el contenedor Docker solicite interacción, puedes configurar la zona horaria antes de la instalación. Modifica el archivo `Dockerfile` agregando una línea para definir la variable de entorno `DEBIAN_FRONTEND` en `noninteractive` y estableciendo la zona horaria, como se muestra a continuación: ```dockerfile # Usar una imagen de Ubuntu como base FROM ubuntu:20.04 # Variables de entorno necesarias para PetaLinux ENV LANG en_US.UTF-8 ENV LANGUAGE en_US:en ENV LC_ALL en_US.UTF-8 # Evitar la interacción en la instalación de paquetes ENV DEBIAN_FRONTEND noninteractive # Establecer la zona horaria RUN echo "Etc/UTC" > /etc/timezone # Instalar dependencias RUN apt-get update && \     apt-get install -y --no-install-recommends \     build-essential \     python3 \     python3-pip \     python3-setuptools \     python3-wheel \     python3-dev \     libtool-...

Petalinux

 Para crear un contenedor Docker con Ubuntu y que funcione con PetaLinux, sigue estos pasos: 1. Instala Docker en tu máquina si aún no lo has hecho. Puedes encontrar las instrucciones de instalación en la [documentación oficial de Docker](https://docs.docker.com/engine/install/). 2. Crea un archivo llamado `Dockerfile` en un directorio nuevo. Este archivo especificará las instrucciones para crear la imagen Docker con Ubuntu y PetaLinux. 3. Abre el archivo `Dockerfile` en un editor de texto y agrega las siguientes líneas: ```dockerfile # Usar una imagen de Ubuntu como base FROM ubuntu:20.04 # Variables de entorno necesarias para PetaLinux ENV LANG en_US.UTF-8 ENV LANGUAGE en_US:en ENV LC_ALL en_US.UTF-8 # Instalar dependencias RUN apt-get update && \     apt-get install -y --no-install-recommends \     build-essential \     python3 \     python3-pip \     python3-setuptools \     python3-wheel \     python...

Rocky 8

 Aquí tienes un `Dockerfile` que te permitirá construir una imagen de Docker basada en Rocky Linux 8 e instalar Vivado y PetaLinux. Asegúrate de descargar los instaladores de Vivado y PetaLinux y tenerlos en una carpeta llamada `installers`. 1. Crea un archivo llamado `Dockerfile` en el mismo directorio donde se encuentra la carpeta `installers`. 2. Abre el archivo `Dockerfile` con tu editor de texto favorito y pega el siguiente contenido: ```Dockerfile # Utiliza la imagen base de Rocky Linux 8 FROM rockylinux/rockylinux:8 # Copia los instaladores de Vivado y PetaLinux al contenedor COPY installers /installers # Instala las dependencias necesarias RUN dnf -y update && \     dnf -y groupinstall "Development Tools" && \     dnf -y install \       wget \       which \       libX11-devel \       libXext-devel \       libXrender-devel \       libXtst-devel \ ...

Docker

 Para crear un Dockerfile con Oracle 7 (CentOS 7) como base e instalar PetaLinux y Vivado, sigue estos pasos: 1. Descarga el instalador de Vivado y PetaLinux desde el sitio web de Xilinx y colócalos en un directorio llamado `installers`. Asegúrate de tener una cuenta en Xilinx y haber iniciado sesión para acceder a los archivos de instalación. 2. Crea un archivo llamado `Dockerfile` en el mismo directorio donde se encuentra la carpeta `installers`. 3. Abre el archivo `Dockerfile` con tu editor de texto favorito y pega el siguiente contenido: ```Dockerfile # Utiliza la imagen base de CentOS 7 FROM centos:7 # Copia los instaladores de Vivado y PetaLinux al contenedor COPY installers /installers # Actualiza e instala las dependencias necesarias RUN yum -y update && \     yum -y groupinstall "Development Tools" && \     yum -y install \       wget \       which \       libX11-devel \       l...

Vivado centos

Crear un Dockerfile con Oracle 7 (CentOS 7) como base e instalar Vivado 2018 en él es un proceso bastante sencillo. A continuación, te muestro los pasos para lograrlo: 1. Descarga el instalador de Vivado 2018 desde el sitio web de Xilinx y colócalo en un directorio llamado `vivado_installer`. Asegúrate de tener una cuenta en Xilinx y haber iniciado sesión para acceder a los archivos de instalación. 2. Crea un archivo llamado `Dockerfile` en el mismo directorio donde se encuentra la carpeta `vivado_installer`. 3. Abre el archivo `Dockerfile` con tu editor de texto favorito y pega el siguiente contenido: ```Dockerfile # Utiliza la imagen base de CentOS 7 FROM centos:7 # Copia el instalador de Vivado al contenedor COPY vivado_installer /vivado_installer # Actualiza e instala las dependencias necesarias RUN yum -y update && \     yum -y groupinstall "Development Tools" && \     yum -y install \       wget \       which \ ...

Backup

 Hacer una copia de seguridad de tu wiki basado en MediaWiki implica dos partes principales: respaldar los archivos y respaldar la base de datos. Aquí te explico cómo hacerlo: **1. Copia de seguridad de los archivos:** Primero, debes hacer una copia de seguridad de todos los archivos de tu instalación de MediaWiki. Esto incluye el código fuente, archivos de configuración, extensiones, skins y archivos multimedia (imágenes, documentos, etc.) cargados por los usuarios. Para hacer una copia de seguridad de los archivos, sigue estos pasos: 1. Accede a tu servidor mediante FTP, SFTP o SSH, dependiendo de cómo esté configurado tu servidor. 2. Navega al directorio donde está instalado MediaWiki. 3. Comprime todos los archivos y carpetas en este directorio. Puedes hacerlo usando un programa como WinZip, 7-Zip o tar (para usuarios de Linux/Unix). Un ejemplo de cómo comprimir estos archivos usando `tar` en un servidor Unix/Linux es: ```bash tar -czvf mediawiki_backup.tar.gz /path/to/your/med...

Media wiki

 Actualizar MediaWiki de la versión 1.28 a la última versión es un proceso que involucra varias etapas. Siempre es recomendable hacer una copia de seguridad completa de tu instalación de MediaWiki y de la base de datos antes de comenzar el proceso de actualización. Aquí tienes una descripción general de los pasos a seguir para actualizar tu instancia de MediaWiki: 1. **Revisar los requisitos del sistema**: Antes de comenzar la actualización, consulta los requisitos del sistema para la última versión de MediaWiki en la página oficial de [MediaWiki: Requisitos del servidor](https://www.mediawiki.org/wiki/Manual:Installation_requirements). Asegúrate de que tu servidor cumpla con los requisitos mínimos. 2. **Hacer una copia de seguridad**: Haz una copia de seguridad completa de tu sitio de MediaWiki y de la base de datos. Esto es importante en caso de que algo salga mal durante la actualización y necesites restaurar tu wiki a su estado anterior. 3. **Descargar la última versión de Medi...

Ubuntu

 ¡Claro! Aquí tienes un ejemplo de Dockerfile para crear una imagen de Ubuntu 22.04 básica: ``` # Utiliza una imagen base de Ubuntu 22.04 FROM ubuntu:22.04 # Actualiza los paquetes e instala algunas herramientas útiles RUN apt-get update && apt-get upgrade -y && apt-get install -y \     curl \     git \     vim \     && rm -rf /var/lib/apt/lists/* # Establece el directorio de trabajo en el directorio raíz WORKDIR / # Ejecuta un shell Bash por defecto cuando se inicia el contenedor CMD ["/bin/bash"] ``` Este Dockerfile: - Utiliza una imagen base de Ubuntu 22.04. - Actualiza los paquetes del sistema e instala algunas herramientas útiles como `curl`, `git` y `vim`. - Establece el directorio de trabajo en el directorio raíz. - Ejecuta un shell Bash por defecto cuando se inicia el contenedor. Para crear una imagen a partir de este Dockerfile, puedes utilizar el siguiente comando en la misma carpeta que el Dockerfile: ``` do...

Questasim 2

 Entiendo que necesitas compatibilidad con versiones antiguas de Questasim. Sin embargo, no tengo información específica sobre qué versión de Questasim deseas utilizar. A continuación, proporciono un ejemplo de `Dockerfile` y `docker-compose.yml` que debería ser compatible con versiones antiguas de Questasim, pero es posible que debas ajustar las dependencias y las variables de entorno según la versión específica que estés utilizando. 1. **Dockerfile** ```dockerfile # Imagen base FROM ubuntu:18.04 # Autor LABEL maintainer="Your Name <your.email@example.com>" # Variables de entorno ENV DEBIAN_FRONTEND=noninteractive ENV QUESTASIM_VERSION="10.7c" # Instalación de dependencias RUN apt-get update && apt-get install -y \     wget \     build-essential \     libxext6 \     libxft2 \     lib32ncurses5 \     lib32z1 \     lib32stdc++6 \     libjpeg62 \     libpng16-16 \     net...

Questasim

 Questasim no proporciona imágenes oficiales de Docker, pero aquí tienes un ejemplo de un archivo `Dockerfile` para crear una imagen de Docker con Questasim y un archivo `docker-compose.yml` para ejecutarlo. 1. **Dockerfile** ```dockerfile # Imagen base FROM ubuntu:20.04 # Autor LABEL maintainer="Your Name <your.email@example.com>" # Variables de entorno ENV DEBIAN_FRONTEND=noninteractive ENV QUESTASIM_VERSION="2021.3_3" # Instalación de dependencias RUN apt-get update && apt-get install -y \     wget \     build-essential \     libxext6 \     libxft2 \     lib32ncurses6 \     lib32z1 \     lib32stdc++6 \     libjpeg62 \     libpng16-16 \     netbase \     xterm \  && rm -rf /var/lib/apt/lists/* # Copiar el instalador de Questasim COPY path/to/questasim_${QUESTASIM_VERSION}-amd64.deb /tmp # Instalar Questasim RUN dpkg -i /tmp/questasim_${QUESTASIM...

Vivado2

 Entendido, para abrir automáticamente la GUI de Vivado al iniciar el contenedor, realiza los siguientes cambios en el archivo `docker-compose.yml`: 1. Cambia el comando en el servicio `vivado` para que inicie la GUI de Vivado en lugar de `/bin/bash`. Reemplaza la línea actual de `command` con la siguiente: ```yaml command: vivado ``` 2. Para permitir que la GUI de Vivado se muestre correctamente en tu sistema host, es posible que necesites habilitar el acceso al servidor X en tu máquina local. Ejecuta el siguiente comando en tu máquina local antes de iniciar el contenedor de Docker: ```sh xhost +local:root ``` Ten en cuenta que este comando permite el acceso no restringido al servidor X11 para el usuario root, lo que puede ser un riesgo de seguridad. Para revocar el acceso, ejecuta el siguiente comando después de cerrar la GUI de Vivado: ```sh xhost -local:root ``` 3. Con estos cambios, tu archivo `docker-compose.yml` se verá así: ```yaml version: '3.8' services:   vivado: ...

Vivado

 Vivado es una herramienta de desarrollo de Xilinx que no es de código abierto, lo que significa que no se puede distribuir libremente. Por lo tanto, no puedo proporcionarte directamente un archivo `docker-compose.yml` que incluya Vivado. Sin embargo, te puedo guiar para crear tu propio archivo `Dockerfile` y `docker-compose.yml` para ejecutar Vivado en un contenedor de Docker. Primero, necesitas obtener una copia de Vivado y una licencia válida desde el sitio web de Xilinx. Luego, sigue estos pasos: 1. **Crear un directorio para Vivado y Docker**:    ```    mkdir vivado-docker    cd vivado-docker    ``` 2. **Colocar el instalador de Vivado en el directorio**:    Copia el archivo de instalación de Vivado (por ejemplo, `Vivado_202x.x.xxxxxx_Lin64.bin`) en el directorio `vivado-docker` creado previamente. 3. **Crear un archivo `Dockerfile`**:    En el directorio `vivado-docker`, crea un archivo llamado `Dockerfile` con el si...

Eventos

 Entiendo, en ese caso podemos utilizar un enfoque diferente: en lugar de contar las ejecuciones directamente en la aplicación, podemos configurar Graphite para que registre un evento cada vez que se ejecute la aplicación. Luego, Graphite se encargará de contar las ejecuciones en un período de tiempo determinado (por ejemplo, al día). Aquí hay un ejemplo de cómo enviar eventos a Graphite desde una aplicación Python: 1. **Instalar Graphite y configurar el servidor**: Asegúrate de tener Graphite instalado y configurado en tu servidor. Puedes seguir las instrucciones de la [documentación oficial de Graphite](https://graphite.readthedocs.io/en/latest/install.html) para hacerlo. 2. **Enviar eventos a Graphite**: En el código de tu aplicación, puedes utilizar el siguiente código para enviar un evento a Graphite cada vez que se ejecute la aplicación: ```python import socket import time def send_event_to_graphite(metric_name, value, timestamp=None):     graphite_server = 'localho...

Graphite

 Entiendo que deseas enviar el resultado del script anterior a Graphite, un sistema de monitoreo y almacenamiento de series temporales. Para hacer esto, primero necesitas instalar y configurar Graphite. Asumiendo que ya tienes Graphite configurado, puedes modificar el script para enviar los datos a Graphite utilizando `nc` (Netcat).  Primero, asegúrate de tener `nc` instalado en tu sistema. En sistemas basados en Debian o Ubuntu, puedes instalarlo con: ```bash sudo apt-get install netcat ``` Luego, modifica el script para enviar el resultado a Graphite. A continuación se muestra un ejemplo: ```bash #!/bin/bash # Configuración de Graphite GRAPHITE_HOST="your.graphite.host" GRAPHITE_PORT=2003 METRIC_PREFIX="myapp.processes" # Solicita al usuario el nombre del proceso que desea buscar echo "Por favor, ingrese el nombre del proceso que desea buscar:" read proceso # Ejecuta 'ps' y 'grep' para buscar el proceso resultado=$(ps aux | grep -i "...